Monday, April 1, 2013

Suspicious icon file containing signs of shellcode decoder

Icon file containing suspicious CPU instructions

Quttera's Online Website Malware Scanner detected file that serves as favicon.ico and that contain sensible CPU instructions. Malicious Content Detection System(PDF file), developed by Quttera, is the core technology that is used by all its products and services. Its Heuristic layer identified sensible CPU instructions similar to known shell-code decoder. 

Website Malware Scanner report summary

Website malware scan report: http://goo.gl/ydYZg
Size of URL response content scanned: 20MBs

Quttera's Website Malware Scanner


Malicious favicon



Heuristic exploit detection engine report




  1. ; Scanning favicon.ico
  2. ; favicon.ico is suspicious.
  3. ; Detection offset: 0
  4. Investigation counters:
  5. REFERENCES_TO_PROCESS_INTERNALS 0
  6. REFERENCES_TO_PROCESS_IMPORTS   2
  7. REFERENCES_TO_PROCESS_EXPORTS   0
  8. CORRECTLY_PARSED_INSTRUCTIONS   100
  9. CORRECTLY_EXECUTED_INSTRUCTIONS 95
  10. UNRECOGNIZED_CALL_TARGETS       3
  11. UNDEFINED_DIRECT_CALLS  1
  12. UNRECOGNIZED_JUMP_TARGETS       0
  13. SYSTEM_CALLS_COUNT      0
  14. PROC_CALLS_INSIDE_INV_BUFFER    0
  15. JUMPS_INSIDE_INV_BUFFER 3
  16. JUMPS_TO_PROCESS_INTERNALS      0
  17. CALLS_TARGETED_IMPORTS_SECTION  3
  18. CALLS_TARGETED_EXPORTS_SECTION  0
  19. CORRECT_PROCEDURES_CALLS        0
  20. FAR_JUMPS_COUNT 0
  21. BUFFER_OUTSIDE_WRITES_COUNT     6
  22. BUFFER_INSIDE_WRITES_COUNT      0
  23. BUFFER_OUTSIDE_READS_COUNT      6
  24. BUFFER_INSIDE_READS_COUNT       0
  25. FULLY_INITIALIZED_INSTRUCTIONS  56
  26. CONSEQUENT_SINGLE_BYTE_INSTRUCTIONS     3
  27. PROVIDED_ABSOLUTE_MEMORY_ADDRESSES      0
  28. INDIRECT_BUFFER_REFERENCES      2
  29. READS_FROM_PROCESS_STACK_MEMORY 5
  30. WRITES_TO_PROCESS_STACK_MEMORY  2
  31. EXECUTED_ARITHMETIC_INSTRUCTIONS        6
  32. EXECUTES_BITS_OPERATING_INSTRUCTIONS    0
  33. EIP_RETRIEVAL_INSTRUCTIONS      0
  34. IMMEDIATE_OPERANDS_INSTRUCTIONS 0
  35. MEMORY_MODIFYING_MATH_INSTRUCTIONS      0
  36. MAX_WRITTEN_MEMORY_BLOCK        0
  37. Payload disassembly:
  38. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  39. ADD     DS:[EAX]        (0x00000000),EAX (0x00000000)
  40. ADD     DS:[EAX]        (0x00000000),EAX (0x00000000)
  41. ADC     DS:[EAX]        (0x00000000),DL (0x00)
  42. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  43. ADD     DS:[EAX]        (0x00000000),EAX (0x00000000)
  44. AND     DS:[EAX]        (0x00000000),AL (0x00)
  45. PUSH    0x16000004
  46. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  47. ADD     DS:[EAX]        (0x00000000),CH (0x00)
  48. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  49. ADD     DS:[EAX]        (0x00000000),DL (0x00)
  50. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  51. ADD     DS:[EAX]        (0x00000000),AH (0x00)
  52. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  53. ADD     DS:[ECX]        (0x00000000),AL (0x00)
  54. ADD     DS:[EAX]        (0x00000000),AH (0x00)
  55. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  56. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  57. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  58. ADD     AL (0x00),0x00
  59. ADD     DS:[EDX]        (0x00000000),DL (0x00)
  60. OR      EAX (0x00000000),DS:[EAX]       (0x00000000)
  61. ADD     DS:[EDX]        (0x00000000),DL (0x00)
  62. OR      EAX (0x00000000),DS:[EAX]       (0x00000000)
  63. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  64. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  65. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  66. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  67. ADD     DS:[ECX]        (0x00000000),AL (0x00)
  68. PUSH    SS (0x0000)
  69. AND     DS:[EBP + 0x6]  (0x00000006),CH (0x00)  ==random write instruction
  70. INC     EBX (0x00000000)
  71. IMUL    EAX (0x00000000),EDI (0x00000000),0xEB94550C
  72. CMOVPO  EDX (0x00000000),DS:[ECX + 0x6C340DED]  (0x6C340DED)    ==random read instruction
  73. JCXZ    0x07    ==random read instruction
  74. ADD     ECX (0x00000000),DS:[EDX]       (0x00000000)
  75. POP     SS (0x0000)
  76. SAHF   
  77. ADD     DS:[EAX]        (0x00000000),AL (0x00)
  78. ADD     DS:[EBX - 0x6D000000]   (0x93000001),CL (0x00)  ==random write instruction
  79. ADD     EAX (0x00000000),DS:[EBX]       (0x00000001)    ==random read instruction
  80. ADD     ESP (0x0872D633),DS:[EAX - 0x4EEBEBEC]  (0xB2141414)    ==random read instruction
  81. POP     DS (0x0000)
  82. POP     DS (0x0000)
  83. POP     DS (0x0000)
  84. MOV     BL (0x01),0x0C
  85. OR      AL (0x00),0x0C
  86. JP      0x00
  87. ADD     DS:[EAX]        (0x0100000C),AL (0x0C)  ==random write instruction      suspicious memory writeinstruction
  88. INC     EAX (0x0100000C)
  89. ADD     DS:[EAX]        (0x0100000D),AL (0x0D)  suspicious memory write instruction
  90. ADD     [0xD2B48C02]    (0xD2B48C02),AH (0x00)  ==random write instruction
  91. POP     ES (0x0000)
  92. MOV     AL (0x0D),0xF4
  93. DEC     [EBP*0x4 + EAX] (0x010000F4)
  94. STD    
  95. CALL    DS:[EAX]        (0x010000F4)
  96. CWDE   
  97. STC    
  98. CALL    [0x16FFF186]    (0x16FFF186)
  99. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  100. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  101. ADD     DS:[EAX]        (0x000000F4),EAX (0x000000F4)   ==random write instruction
  102. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  103. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  104. ADD     DS:[EAX]        (0x000000F4),EAX (0x000000F4)   ==random write instruction
  105. AND     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  106. PUSH    0x16000004
  107. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  108. ADD     DS:[EAX]        (0x000000F4),CH (0x00)  ==random write instruction
  109. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  110. ADD     DS:[EAX]        (0x000000F4),DL (0x00)  ==random write instruction
  111. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  112. ADD     DS:[EAX]        (0x000000F4),AH (0x00)  ==random write instruction
  113. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  114. ADD     DS:[ECX]        (0x00000000),AL (0xF4)  suspicious memory write instruction
  115. ADD     DS:[EAX]        (0x000000F4),AH (0x00)  ==random write instruction
  116. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  117. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  118. ADD     DS:[EAX]        (0x000000F4),AL (0xF4)  ==random write instruction      suspicious memory writeinstruction
  119. ADD     AL (0xF4),0x00
  120. ADD     DS:[EDX]        (0x00000000),DL (0x00)
  121. OR      EAX (0x000000F4),DS:[EAX]       (0x000000F4)    ==random read instruction
  122. ADD     DS:[EDX]        (0x00000000),DL (0x00)
  123. OR      EAX (0x000007FC),DS:[EAX]       (0x000007FC)    ==random read instruction
  124. ADD     DS:[EAX]        (0x000007FC),AL (0xFC)  ==random write instruction      suspicious memory writeinstruction
  125. ADD     DS:[EAX]        (0x000007FC),AL (0xFC)  ==random write instruction      suspicious memory writeinstruction
  126. ADD     DS:[EAX]        (0x000007FC),AL (0xFC)  ==random write instruction      suspicious memory writeinstruction
  127. ADD     DS:[EAX]        (0x000007FC),AL (0xFC)  ==random write instruction      suspicious memory writeinstruction
  128. ADD     DS:[ECX]        (0x00000000),AL (0xFC)  suspicious memory write instruction
  129. PUSH    SS (0x0000)
  130. AND     DS:[EBP + 0x6]  (0x00000006),CH (0x00)  ==random write instruction
  131. INC     EBX (0x0000000C)
  132. IMUL    EAX (0x000007FC),EDI (0x00000000),0xEB94550C
  133. CMOVPO  EDX (0x00000000),DS:[ECX + 0x6C340DED]  (0x6C340DED)    ==random read instruction
  134. JCXZ    0x07    ==random read instruction
  135. AAM     0xD4
  136. CALL    EAX (0x00000000)
  137. LOCK ADD        DS:[EAX]        (0x00000000),EAX (0x00000000)



Malware clean-up


Such malware is often targets specific software security vulnerability inside the attacked process or application. In order to make the final decision whether such detection is false-positive or part of a working vulnerability exploit in depth investigation of all website's files required. If you suspect your site has been compromised in this way sign up for Website Anti-malware Monitoring and receive malware remediation assessment for these and other kinds of malware.