lookinsidethebox
1.0.0
이 도구는 Dropbox가 수정 된 Python 통역사에 적용되는 암호화 및 난독 화 층을 깨뜨리는 최신 구현입니다. 저자는 많은 달을 전한 작품과 다른 사람들이 수행 한 공개 작업을 기반으로합니다. 자세한 내용은 블로그 포스트를 참조하십시오.
초기 릴리스.
Python 3.7을 사용하여 Opcode 데이터베이스를 재생하도록 코드가 업데이트되었습니다. 또한 Uncompyle6이 설치되는 버전 (> = 3.5.x)을 확인하여 Uncompyle6이 설치 될 때 오류가 발생하지만 매우 구식입니다. Opcode 매핑 생성에서 몇 가지 버그가 고정되었습니다. 이메일을 보내 주신 @Slinkinone에게 감사드립니다.
uncompyle6 설치되어 있는지 확인하십시오. 다음과 같이 할 수 있습니다. pip3 install uncompyle6
포함 된 fetchdeps.sh Bash 스크립트를 실행하십시오. 이렇게하면 Python 소스 코드를 가져오고 Linux Tarball 용 Dropbox의 최신 버전을 다운로드합니다. Python 소스 코드는 Opcode 데이터베이스를 재생하려는 경우에만 필요합니다.
Python 3.7은 >=3.8 기본 코드 유형 등으로 변경 될 때 다음과 같은 다음 호출 을 수행하기위한 요구 사항입니다.
Dropbox Python 소스 코드의 대부분을 포장, 해독 및 디 컴파일하려면 다음을 실행하십시오. 이름 out 기본 디렉토리로 추출됩니다.
python3 unpacker.py --dropbox-zip `find . -name python-packages-37.zip`
find . -name python-packages-37.zip | xargs python3.7 gendb.py --python-dir tmp/Python-3.7.4/ --db opcode.db --dropbox-zip
python3 patchzip.py --dropbox-zip `find . -name python-packages-37.zip` --output-zip out.zip
mv out.zip ~/.dropbox-dist/dropbox-lnx_64-71.4.108/python-packages-37.zip
~/.dropbox-dist/dropbox-lnx_64-71.4.108/dropbox
python3 checkdb.py --db opcodemap.db
다음과 같은 것과 같은 것을 산출합니다.
...
| ============================== | ======= | ======= |
| OPCODE | PYTHON | DROPBOX |
| ============================== | ======= | ======= |
| POP_TOP | 1 | 24 |
| ROT_TWO | 2 | 1 |
| ROT_THREE | 3 | 83 |
| DUP_TOP | 4 | 66 |
| UNARY_POSITIVE | 10 | 77 |
...
setenv.py 스크립트를 참조하십시오. 이에 대한 자세한 내용은 블로그 포스트를 다시 참조하십시오. 마음대로 수정 한 다음 이와 같이 사용하여 환경을 설정하고 Dropbox를 실행하십시오. eval `python3 setenv.py`
~/.dropbox-dist/dropbox-lnx_64-71.4.108/dropbox