Proceedings of the 26th Annual Computer Security Applications Conference 2010
DOI: 10.1145/1920261.1920305
|View full text |Cite
|
Sign up to set email alerts
|

Comprehensive shellcode detection using runtime heuristics

Abstract: A promising method for the detection of previously unknown code injection attacks is the identification of the shellcode that is part of the attack vector using payload execution. Existing systems based on this approach rely on the self-decrypting behavior of polymorphic code and can identify only that particular class of shellcode. Plain, and more importantly, metamorphic shellcode do not carry a decryption routine nor exhibit any self-modifications and thus both evade existing detection systems. In this pape… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

1
65
0

Year Published

2013
2013
2024
2024

Publication Types

Select...
5
1

Relationship

0
6

Authors

Journals

citations
Cited by 54 publications
(66 citation statements)
references
References 22 publications
1
65
0
Order By: Relevance
“…In other words, our system tries each byte of the network stream as a potential entry point of shellcode. Similar to the dynamic approaches [1], [6], [9], we refer to a complete execution from each offset of the stream as an execution chain. Compared with the dynamic approaches that require intercepting and tracking each instruction, our approach allows instruction sequences being executed directly on the CPU, and only trap a small number of instructions selectively by utilizing hardware paging mechanisms.…”
Section: Overview Of Our Approachmentioning
confidence: 99%
See 4 more Smart Citations
“…In other words, our system tries each byte of the network stream as a potential entry point of shellcode. Similar to the dynamic approaches [1], [6], [9], we refer to a complete execution from each offset of the stream as an execution chain. Compared with the dynamic approaches that require intercepting and tracking each instruction, our approach allows instruction sequences being executed directly on the CPU, and only trap a small number of instructions selectively by utilizing hardware paging mechanisms.…”
Section: Overview Of Our Approachmentioning
confidence: 99%
“…In order to detect shellcode in our execution environment, we employ the PEB heuristic [6]. This detection heuristic relies on the conventional behaviour of shellcode: After executing the network string, the shellcode will first read the memory address of FS:[0x30] to locate the PEB, and then read the LoaderData field (0xc bytes offset) of the PEB to locate the PEB LDR DATA structure.…”
Section: Shellcode Detectionmentioning
confidence: 99%
See 3 more Smart Citations