3
3
import lief
4
4
from lief import DEX , ELF , PE , MachO
5
5
6
- from blint .logger import LOG
6
+ from blint .logger import DEBUG , LOG
7
7
from blint .utils import calculate_entropy , check_secret , decode_base64
8
8
9
9
MIN_ENTROPY = 0.39
10
10
MIN_LENGTH = 80
11
11
12
- lief .logging .disable ()
12
+ # Enable lief logging in debug mode
13
+ if LOG .level != DEBUG :
14
+ lief .logging .disable ()
13
15
14
16
ADDRESS_FMT = "0x{:<10x}"
15
17
@@ -54,7 +56,7 @@ def parse_notes(parsed_obj):
54
56
ndk_build_number = ""
55
57
abi = ""
56
58
version_str = ""
57
- if isinstance (note_details , lief .ELF .AndroidNote ):
59
+ if isinstance (note_details , lief .ELF .AndroidIdent ):
58
60
sdk_version = note_details .sdk_version
59
61
ndk_version = note_details .ndk_version
60
62
ndk_build_number = note_details .ndk_build_number
@@ -71,7 +73,7 @@ def parse_notes(parsed_obj):
71
73
metadata ["notes" ].append (
72
74
{
73
75
"index" : idx ,
74
- "description" : str ( description_str ) ,
76
+ "description" : description_str ,
75
77
"type" : type_str ,
76
78
"details" : note_details_str ,
77
79
"sdk_version" : sdk_version ,
@@ -715,7 +717,7 @@ def parse(exe_file):
715
717
header = parsed_obj .header
716
718
optional_header = parsed_obj .optional_header
717
719
metadata ["used_bytes_in_the_last_page" ] = (
718
- dos_header .used_bytes_in_the_last_page
720
+ dos_header .used_bytes_in_last_page
719
721
)
720
722
metadata ["file_size_in_pages" ] = dos_header .file_size_in_pages
721
723
metadata ["num_relocation" ] = dos_header .numberof_relocation
@@ -1073,15 +1075,15 @@ def parse(exe_file):
1073
1075
code_signature = parsed_obj .code_signature
1074
1076
metadata ["code_signature" ] = {
1075
1077
"available" : True if code_signature .size else False ,
1076
- "data" : str (bytes ( code_signature .data ) .hex ()),
1078
+ "data" : str (code_signature .data .hex ()),
1077
1079
"data_size" : str (code_signature .data_size ),
1078
1080
"size" : str (code_signature .size ),
1079
1081
}
1080
1082
if (
1081
1083
not parsed_obj .has_code_signature
1082
1084
and parsed_obj .has_code_signature_dir
1083
1085
):
1084
- code_signature = parsed_obj .has_code_signature_dir
1086
+ code_signature = parsed_obj .code_signature_dir
1085
1087
metadata ["code_signature" ] = {
1086
1088
"available" : True if code_signature .size else False ,
1087
1089
"data" : str (bytes (code_signature .data ).hex ()),
0 commit comments