문제 현상
PyInstaller로 패키징 시 일부 빌드 파일이 백신에 의해 삭제되어 오류 발생.
28195 WARNING: Execution of 'write_manifest_to_executable' failed on attempt #1 / 20: error(5, 'LoadLibraryExW', '액세스가 거부되었습니다.'). Retrying in 0.05 second(s)...
28611 WARNING: Execution of 'write_manifest_to_executable' failed on attempt #2 / 20: error(5, 'LoadLibraryExW', '액세스가 거부되었습니다.'). Retrying in 0.06 second(s)...
Traceback (most recent call last):
...
OSError: [WinError 2] 지정된 파일을 찾을 수 없습니다.
...
백신 탐지 내역
- 탐지명: Trojan/Win.Pyinstaller.R697276
- 설명: PyInstaller로 제작된 일부 악성코드 사례가 신고되어 해당 방식으로 빌드된 파일을 백신이 자동 삭제함.
원인
- PyInstaller의 bootloader가 외부에서 빌드되어 제공되므로, 보안 프로그램에서 악성코드로 오탐지 가능.
- 백신이 빌드 중간 파일 또는 실행 파일을 삭제하면서 패키징 실패.
조치
PyInstaller를 직접 빌드하여 백신 탐지를 회피하고 패키징 성공.
1. Visual Studio Build Tools 설치
- https://visualstudio.microsoft.com/ko/visual-cpp-build-tools/
Microsoft C++ Build Tools - Visual Studio
visualstudio.microsoft.com
2. C++ Build Tools 구성요소 설치
필수 구성요소:
- Windows SDK
- MSVC v14.x 이상
3. pyinstaller 빌드 및 설치
py -m pip uninstall pyinstaller -y
git clone https://github.com/pyinstaller/pyinstaller.git
cd pyinstaller
cd bootloader
py waf all
cd ..
py -m pip install .
정리
외부에서 빌드된 PyInstaller 실행 파일은 보안 정책에 의해 차단될 수 있지만, 직접 빌드한 경우에는 동일한 내용이라도 차단되지 않는 특성을 활용하여 문제를 해결함.
'IT > ETC' 카테고리의 다른 글
[Python] PyInstaller 패키징 시 동적 임포트 모듈 누락 (0) | 2025.02.27 |
---|---|
[vscode] pip install (0) | 2021.07.07 |
[Outlook] 메일 내용 안 보이는 오류 (0) | 2021.06.15 |
[AWS] AWS 용어 (0) | 2020.08.05 |
[Windows] 윈도우 탐색기에서 검색 불가 오류 (0) | 2020.06.05 |