Security || AI

3. 추출한 악성코드 pe 헤더 추가하기 본문

프로젝트/RL_Malware

3. 추출한 악성코드 pe 헤더 추가하기

보안&인공지능 2021. 2. 15. 06:51

악성코드를 csv 형태로 추출하였지만 아래의 사진과 같이 각각 feature의 값이 어떤 feature의 값인지를 알려주는 pe 헤더가 누락되어있어, 이를 추가하는 코드를 짰다.

header = []

header.append('file_name')
#Dos Header
header.append('e_cblp')  
header.append('e_cp')  
#.
#. (생략)
#.
header.append('api_30')
header.append('len_dll')
header.append('len_api')

print(len(header))

header.append('flag')

file = open('data/pe_extract.csv', 'r')
rea = csv.reader(file)
data = []

for row in rea:
    data.append(row)

data.insert(0, header)

file.close()

with open('pe_extract_header', 'w', newline='') as file:
    writer = csv.writer(file)
    for i in data:
        writer.writerow(i)

1. 리스트형 변수인 header에 각각의 feature이름을 추가한다.

2. feature의 값을 가지고 있는 csv 파일인 pe_extract.csv의 값들을 리스트형 변수인 data에 저장한다.

3. 저장한 data의 0번째 행에 header를 삽입한다.

4. data 리스트를 csv.writer를 사용하여 저장하여 준다.

반응형

'프로젝트 > RL_Malware' 카테고리의 다른 글

2. 악성코드 PE 추출 with pickle, pefile  (0) 2021.02.15
1. 데이터 분류하기 with Pandas, os  (0) 2021.02.14