Function Identifier
The identifier uses test cases to identify common library functions in CGC binaries. It prefilters by finding some basic information about stack variables/arguments. The information of about stack variables can be generally useful in other projects.
1
>>> import angr
2
3
# get all the matches
4
>>> p = angr.Project("../binaries/tests/i386/identifiable")
5
# note analysis is executed via the Identifier call
6
>>> idfer = p.analyses.Identifier()
7
>>> for funcInfo in idfer.func_info:
8
... print(hex(funcInfo.addr), funcInfo.name)
9
10
0x8048e60 memcmp
11
0x8048ef0 memcpy
12
0x8048f60 memmove
13
0x8049030 memset
14
0x8049320 fdprintf
15
0x8049a70 sprintf
16
0x8049f40 strcasecmp
17
0x804a0f0 strcmp
18
0x804a190 strcpy
19
0x804a260 strlen
20
0x804a3d0 strncmp
21
0x804a620 strtol
22
0x804aa00 strtol
23
0x80485b0 free
24
0x804aab0 free
25
0x804aad0 free
26
0x8048660 malloc
27
0x80485b0 free
Copied!
Last modified 1yr ago
Copy link