2023 공부 로그🐰

[악성코드] Lab9

L_Chae 2023. 12. 7. 13:29

1.(1) ~/Desktop/AVCodes 폴더에서 benign1.txt ... benign10.txt 파일들과 fakeVirus1.txt ... fakeVirus10.txt 파일들이 존재하는지 확인한다. 해당 파일들이 존재하지 않으면 아래 (2)~(3) 과정을 수행한다.

(2) PowerShell에서 ~/Desktop/AVCodes 폴더로 이동한 후, 다음의 명령어를 차례대로 수행한다.

python .\benign_file_gen.py

python .\fakeVirus_file_gen.py

 

(3) ~/Desktop/AVCodes 폴더에서 benign1.txt ... benign10.txt 파일들과 fakeVirus1.txt ...f fakeVirus10.txt 파일들이 생성되었는지 확인한다. 파일명이 benign으로 시작하는 파일들은 정상적인 파일들로 가정하며, 파일명이 fakeVirus로 시작하는 파일들은 실제 바이러스를 포함하지는 않지만 본 랩 수행을 위해서 바이러스 파일들로 가정한다.


2. PowerShell에서 ~/Desktop/AVCodes 폴더로 이동한 후, 다음의 명령어를 수행하여 virus.db 파일을 생성한다. 그리고 생성된 virus.db 파일을 복사하여 ~/Desktop/AVCodes/Ch6 폴더에 갖다 놓는다.

 

python .\virus_db_gen.py


3. PowerShell에서 ~/Desktop/AVCodes/Ch6 폴더로 이동한 후, 다음의 명령어를 수행하여 virus.db에 대한 압축과 인코딩 작업을 한다.

 

python .\kmake.py virus.db

virus 파일들의 MD5 해시값

위의 명령어 수행 후의 결과 파일인 virus.kmd가 생성되었음을 확인한다.


4. (1) ~/Desktop/AVCodes 폴더에 있는 benign7.txt 파일과 fakeVirus7.txt 파일을 복사하여 ~/Desktop/AVCodes/Ch6 폴더에 갖다 놓는다.

 

(2) PowerShell에서 ~/Desktop/AVCodes/Ch6 폴더로 이동한 후, 다음의 명령어를 수행한 후 화면에서 출력되는 내용을 확인한다.

 

python .\6-7.py .\benign7.txt

 

(3) PowerShell에서 ~/Desktop/AVCodes/Ch6 폴더로 이동한 후, 다음의 명령어를 수행한 후 화면에서 출력되는 내용을 확인한다.

 

python .\6-7.py .\fakeVirus7.txt

 

위의 명령어 수행 후 fakeVirus7.txt가 삭제되었음을 확인한다.


5. 바이러스 탐지 관점에서 6-7.py 프로그램은 5-9.py 프로그램을 어떠한 방식으로 개선하는지 서술하시오.

 

(6-7.py 코드 보면서 원리 이해해보기)

- LoadVirusDB()에서 압축된 바이러스의 인코딩을 해제함

- virusDB를 가공하여 vdb에 저장함(앞 .py파일과의 차이점 확인)