Offline에서 Python Package를 다운로드 받으려고 시도했으나 어떤 이유인지 일부 Package(Frida)는 설치가 되지 않았습니다. 그래서 최후의 방법으로 Python 폴더를 통째로 옮기려고 했으나 "failed to create process."라는 에러를 볼 수 있었습니다.
I tried to download Python Package from Offline, but for some reason, some packages (Frida) were not installed. So, as a last resort, I tried to move the entire Python folder, but I got an error saying "failed to create process."
이 에러가 발생하는 이유는 Python\Scripts 경로의 파일들에서 python.exe의 경로가 설치했던 경로로 하드코딩되어 있었기 때문입니다.
The reason for the error is python.exe path in the file. The Python path was hard-coded as the path of initial installation.
정상적인 실행을 위해 하드코딩된 경로를 상대 경로로 변경하였습니다.
For normal execution, I Changed Hard-Coded Python Path to Relative Path.
이후, 실행이 불가능하던 Pyhton Package인 Frida를 실행할 수 있었습니다.
After that, Frida, a Pyhton Package that was not executable, was able to be executed.
Automation Code
import os, sys
if (len(sys.argv)!=2):
print("Please Input Python Scripts Path")
exit(0)
file_path = sys.argv[1]
file_list = os.listdir(file_path)
for file in file_list:
print(file)
f = open(f"{file_path}\\{file}", "rb")
data = f.read()
# relative Path1
index1 = data.find(b"#!c:")+2
# Not Found
if(index1==1):
f.close()
continue
# relative Path2
index2 = data[index1:].find(b"python.exe")+index1
# Replace String
tmp = data[index1:index2]
data = data.replace(tmp,len(tmp)*b"\x20")
f.close()
f = open(f"{file_path}\\{file}", "wb")
f.write(data)
f.close()
'Study > Python' 카테고리의 다른 글
IDA Python 정리 (IDA 7.5 이상 사용 가능) (0) | 2022.03.11 |
---|---|
[Python3] Tcp Socket Proxy tool (0) | 2022.03.10 |
[Django] FileUpload 설정 (0) | 2021.09.20 |
[Django] Debug=False 후 MEDIA, STATIC 경로 설정 (0) | 2021.09.20 |
[Django] 실행을 위한 기본 명령어 (0) | 2021.09.20 |
댓글