파이썬 .exe
파일 디컴파일 방법
파이썬으로 만든 .exe
파일은 디컴파일이 가능하며, 이 과정은 PyInstaller, cx_Freeze, Py2exe 등을 사용하여 변환된 파일에 따라 달라짐.
PyInstaller로 패키징된 .exe
파일 디컴파일
필요 도구
pyinstxtractor
: PyInstaller로 패키징된 파일을 분석하고 추출하는 도구.
https://github.com/extremecoders-re/pyinstxtractor?tab=readme-ov-file 설명서를 읽는다.
https://github.com/extremecoders-re/pyinstxtractor 에 가서 zip 파일을 ./ 폴더에 다운. git 이 있다면 git으로도 됨.
이후 exe 파일로 된 내용을 python pyinstxtractor.py 를 돌려서 pyc 파일로 변환 그리고 아래의 사이트에 가서 해당 pyc 파일을 하나씩 까보면 됨.
설치 방법
git clone https://github.com/extremecoders-re/pyinstxtractor.git
사용 방법
cd pyinstxtractor
python pyinstxtractor.py <your_executable>.exe
예시 ) cmd 창이나 아니면 Anaconda 파워셀에서 아래와 같이 치면 된다.
cd pyinstxtractor
python pyinstxtractor.py <your_executable>.exe
python pyinstxtractor.py "C:\Users\user2401\Documents\카카오톡 받은 파일\*.exe"
<your_executable>.exe
는 분석하고자 하는 파일의 이름으로 교체해야된다.
.pyc
파일 디컴파일
디컴파일러로는 Uncompyle6
및 Decompyle++
등이 있음.
Uncompyle6 사용법
- 설치
pip install uncompyle6
- 디컴파일
uncompyle6 -o . <your_file>.pyc
주의사항
현재 uncompyle6 를 설치해서도 pyc 파일을 py 파일로 변환이 가능하나, 3.11.5 버전 파이썬에서는 현재 안됨. pip install uncompyle6
cmd 창에서 다음과 같이 입력 uncompyle6 -o . .pyc
아래의 사이트에서 pyc 파일을 업로드하면 알아서 py 파일로 변환해줌.
https://www.lddgo.net/en/string/pyc-compile-decompile
주피터 노트북에서의 사용
주피터 노트북에서도 Uncompyle6
을 사용할 수 있음.
!pip install uncompyle6
!uncompyle6 -o . "<your_file>.pyc"
가상 환경 설정
- 가상 환경 생성
conda create -n myenv python=3.8
- 가상 환경 활성화
주피터 노트북에서 직접 활성화는 불가능하며, 해당 환경에 맞는 주피터 커널을 설치하여 사용해야 함.
- 패키지 설치
!pip install uncompyle6
가상 환경을 올바르게 관리하고 사용하는 것은 프로젝트의 필요에 따라 다양한 환경을 유연하게 사용할 수 있게 해줌.
댓글