강좌 / 팁

소프트웨어 PECMD CMPA 복호화

2023.11.15 02:40

sunshine 조회:1386 추천:25

참고 자료: 

夕影님의 자유 게시판: https://windowsforum.kr/index.php?mid=free&page=2&document_srl=20107591

왕초보님의 사용기: https://windowsforum.kr/review/20114925

 

- PECMD에서 CMPA로 암호화 된 스크립트를 복호화 하는 방법입니다.

복호화 스크립트 공개를 허락해 주신 夕影님께 감사드립니다. 

 

- 작업 진행은 [원본 파일]에서 스크립트 추출 -> [대상 파일]로 스크립트 이식 ->

디버거로 [대상 파일] 스크립트 복호화 -> 복호화된 스크립트를 [원본 파일]로 이식으로 진행됩니다.

한글화는 리소스해커로 복호화된 원본 파일을 직접 수정하시면 됩니다.

 

- 관련 파일

원본 파일: CGI-plus_5.0.0.7_x86.7z 

* 사전에 압축 해제가 되어야 리소스해커로 파일을 추출할 수가 있습니다.

 

대상 파일: PECMD101.7z 

* 복호화용 스크립트가 x86 전용이라서 x64도 추출하기 위해서 대상 파일(x86)을 사용하는 것입니다.

일반 PECMD에서 SCRIPTINIT 삭제, 그리고 SCRIPT에서 101를 제외한 나머지는 모두 삭제한 것입니다.

원본 파일이 x86이고 SCRIPT101만 있으면 직접 디버거로 복호화가 가능합니다.  대상 파일은 불필요합니다. 

 

복호화용 스크립트 파일: crypter1.2.7z   231115 

* 4 종류의 도구에서 스크립트 추출이 잘 되었지만 그 외의 도구는 어떻게 될 지는 모릅니다.  

 

리소스해커: ResHacker.exe

* 스크립트 교체시 사용하시면 됩니다.

 

디버거: x32dbg.7z   

* 출처: https://sourceforge.net/projects/x64dbg/files/snapshots/

x64dbg에서 x32dbg만 추출한 것입니다. 압축을 풀고 "x32dbgstart.cmd"를 실행하시면 됩니다.

 

 

1. 원본 파일에서 스크립트 추출하기

 

1-1. 리소스해커로 원본 파일 로드 -> SCRIPT101에 우클릭 -> BIN 파일로 저장을 클릭합니다.

만약 SCRIPT가 복수이면 모두 추출합니다. SCRIPT101, SCRIPT102, SCRIPT103 등으로.

1-1.png

 

1-2. SCRIPT101.BIN 파일로 저장합니다.1-2.png

 

 

2. 원본 파일 스크립트를 대상 파일(PECMD101.EXE)로 이식하기

 

2-1. 리소스해커로 대상 파일 로드 -> SCRIPT101에 우클릭 -> 리소스 교체를 클릭합니다.

만약 SCRIPT가 복수이면 SCRIPT101만 교체하고 추출한 후, 다시 1번부터 시작해서 SCRIPT102를 교체합니다. 이런 식으로 모두 교체.

2-1.png

 

2-2. 파일 선택을 클릭합니다.

2-2.png

 

2-3. 원본 파일에서 추출한 SCRIPT101를 선택 후 열기를 합니다.

2-3.png

 

2-4. 교체를 클릭합니다.

2-4.png

 

2-5. 저장 아이콘을 클릭합니다.

2-5.png

 

2-6. 원본 SCRIPT101를 대상 파일( PECMD101)로 이식 후 실행한 모습입니다.

2-6.png

 

3. x64dbg로 대상 파일(PECMD101.EXE)의 CMPA 스크립트 복호화 하기

 

3-1. x64dbg를 실행 후 x32dbg를 선택 -> 파일 -> 열기를 하세요.

3-1.png

 

3-2.  PECMD101.EXE를 선택 후 열기를 클릭하세요.

3-2.png

 

3-3. 처음에는 EIP가 노란색 jmp~에 있습니다.

3-3.png

 

3-4. 아래 화살표 아이콘을 클릭하면 EIP가 청색 push~로 진입합니다.

3-4.png

 

3-5. 아래 (1)번 스크립트 탭을 클릭 후 빈 칸에 마우스를 우클릭 -> 스크립트 로드 -> 열기를 클릭합니다. 

3-5.png

 

3-6. crypter1.2.txt를 선택 후 열기를 클릭합니다.

3-6.png

 

3-7. 스크립트가 나타나면, 빈 칸에 마우스를 우클릭 -> 실행을 클릭합니다. 또는 스페이스 키를 클릭합니다.

3-7.png

 

3-8. 복호화(디크립트) 성공 메시지가 나타나면 OK를 클릭합니다.

3-8.png

 

3-9. OK를 클릭하고 x64dbg 디버거를 종료합니다.

3-9.png

 

4. x32\memdumps 폴더에 복호화된 BIN 파일이 생성됩니다.

memdump_pid_addr_size.bin 형식으로 저장됩니다.

 

4-1.복호화 BIN 파일을 notepad2로 열고 [파일 - 다시 읽기 - 인코딩으로 - UTF-16LE]를 선택하면 문자가 깨지지 않고 잘 보입니다. 여기서 [모두 선택(Ctrl+A) - 복사(Ctrl+C) - 빈 곳에 마우스 우클릭 - 새로 만들기 - 텍스트 문서 - "새 텍스트 문서" 더블 클릭 - 붙여넣기(Ctrl+V) - 저장]하면 됩니다. 그리고 새 텍스트 문서.txt -> 새 텍스트 문서.bin 으로 확장자를 변경해야 리소스해커에서 로드할 수가 있습니다.  

 

4-2. 리소스해커로 원본 파일을 로드한 후 이 BIN 파일을 2번처럼 교체합니다.

교체 후 원본 파일을 실행하면 중어이지만 리소스해커로 한글화를 할 수가 있습니다.

 

5. 제목만 한글화를 해보았습니다.

5.png

 

 

 

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4321 소프트웨어| WinNTSetup.exe에 소소한 팁들 [18] suk 3471 25 03-09
4320 소프트웨어| 디지털 포렌식 툴 - FTK imager [15] 오스 5043 25 01-28
4319 소프트웨어| Total Commander 9.5x 32비트 및 64비트용 한국어 확장 메... [11] VenusGirl 4715 25 03-13
4318 소프트웨어| Win10PE 2016_LTSB_x64 PE 만들기 [24] 대추사랑 5969 25 02-12
4317 윈 도 우| 나만의 PE를 만들자 실전편 3탄 PE고수되기1편 (윈도우10PE... [94] 지연서연아 8671 25 09-01
4316 윈 도 우| W7-8PE Builder제작/완성/수정하여 다시첩부 UP/처음사용자용 [21] 까꾸리 12561 25 06-03
4315 소프트웨어| (추가3) 배치파일 추가기능 extd.exe 사용 팁 [7] 지후빠 949 24 08-13
4314 소프트웨어| pureBasic - FMIFS FormatEX 0.1.2 [6] 입니다 989 24 12-08
4313 소프트웨어| 특정 프로그램을 인터넷 차단하는 방법(인증문제 등...) [3] 사랑이7 2593 24 05-26
4312 윈 도 우| [실사] 윈도우11 프로 VHD 설치 방법 [11] 무월 3121 24 05-08
4311 윈 도 우| [실사] 윈도우11&10 BCD 부팅 오류, 부트 복구(설치) [16] 무월 2463 24 12-05
4310 윈 도 우| [팁] MBR 디스크에 EFI 시스템 파티션 만들기 [16] suk 5633 24 04-19
4309 윈 도 우| 추가)PE 우측하단 워터마크에 각종 정보 넣기 [14] 히이이잌 2697 24 06-16
4308 윈 도 우| 나만의 PE를 만들자 실전편 4탄 PE고수되기2편 (윈도우10PE... [74] 지연서연아 6520 24 09-05
4307 윈 도 우| PE를 실컴에 설치하여 사용하는 방법 [33] 카리스마조 15528 24 05-14
4306 소프트웨어| RSImagex 에디션 WIM 통합 플래쉬 동영상 강좌... [75] 아이언 10101 24 04-29
4305 소프트웨어| 탐색기 컨텍스트 메뉴에 토탈커맨더에서 열기 추가 [15] 지후빠 971 23 07-16
4304 소프트웨어| PE용 다기능 AutoAdd(Config).cmd 작성 팁 [10] 지후빠 1965 23 05-14
4303 윈 도 우| 토렌트 사이트들 한꺼번에 검색하고 열기(파워쉘) [19] zerojiddu 3738 23 05-23
4302 기 타| 바로 가기 만들기 [7] bangul 2270 23 04-22
XE1.11.6 Layout1.4.8