posted by 블르샤이닝 2015. 5. 27. 11:47
728x90

출처 : http://jorryrojer.tistory.com/entry/Yodas-Crypter-13-Unpacking


yoda 옛날버젼이지만. 그래도 모든지 기초가 중요하지. 현재 공개된 코드 좀 보면서 정보찾다가 같이 보게됨. 필요하신분 참조하시길 




unpackingyoda'scrypter1.3.pdf



아 참고로 이 방법 말고도 방법은 있다. 현재 해본방법으로는 제일 간단하게 할수 있는 방법은 맨처음 push 부분에서 레지스터 값 ecx 값에 hd bp 로 wirte로 해서 걸고 런시키면 JMP부분이 나오고 JMP 밑에 INT3 이 나오고 그 밑으로 0000 바이트가 무수히 많다. 여기서 점프해서 들어가면 OEP부분으로 들어가게 된다....걍 편법이다. ㅎㅎㅎ


728x90
posted by 블르샤이닝 2015. 3. 9. 10:28
728x90

말 그대로 칼럼입니다...오타 지적, 태클 환영




Packing 구조에 대한 이해.DOCX




YODA 팩에 대한 소스코드 


yC1.3src.zip



소스코드에서 수정할 부분  

1. i에서 int i=0; 코드부분 추가

2. const 부분에서 const int로 수정


2개 오류 잡으면 정확히 컴파일 됩니다. ( 새로 컴파일한거 올리려고 했는데 용량이 엄청 커져서 수정되지않은것으로 올립니다.)





728x90

'리버싱 > 칼럼' 카테고리의 다른 글

Packing 구조에 대한 이해 (2)  (0) 2015.06.18
가상화 머신 탐지에 대한 칼럼  (0) 2014.12.01
(칼럼)해킹 사례로 본 사회 시스템 피해  (0) 2014.09.02
(칼럼)윈도우 UAC 우회  (0) 2014.02.13
Java 취약점 분석  (0) 2013.12.02
posted by 블르샤이닝 2014. 12. 1. 08:54
728x90

가상화 머신 탐지에 대한 칼럼



가상화 머신 체크.DOCX


728x90

'리버싱 > 칼럼' 카테고리의 다른 글

Packing 구조에 대한 이해 (2)  (0) 2015.06.18
Packing 구조에 대한 이해 - 1부  (0) 2015.03.09
(칼럼)해킹 사례로 본 사회 시스템 피해  (0) 2014.09.02
(칼럼)윈도우 UAC 우회  (0) 2014.02.13
Java 취약점 분석  (0) 2013.12.02
posted by 블르샤이닝 2014. 11. 7. 16:57
728x90

완전 쉬운 nspack....이걸 써야할지 말아야할지 생각도 안하고 ..그냥 올려본다..


해당 특징이라하면 특정 어셈 명령어에 대한 지식을 알면 쉽게 이해 할수 있다.


누구나 아는 upx에서 pushad 의 어셈명령이 무엇인지 기억하는가? 모든 레지스터에 대한 값을 저장하는것이였다.


여기서는 pushfd를 쓴다. PUSHFD 는 'push flags double-word' 의 약어로, 플래그를 

더블워드로 스택에 넣는다.[ 출처 : http://gnudevel.tistory.com/404]
간단히 말해서 기능을 비슷하다. 

------------------------------------------------------------------------------------

pushad 명령어

- 레지스터를 한꺼번에 저장하는 명령어이다.

한꺼번에 저장되는 순서

EAX->ECX->EDX->EBX->ESP->EBP->ESI->EDI

이 순서대로 stack에 저장된다.


실습)

ESP자리에는 pushad 하기 전 ESP 주소값이 대입된다.



popad

- 레지스터의 값을 한꺼번에 들고오는 명령어

레지스터 들고오는 순서
EDI->ESI->EBP->EBX->EDX->ECX->EAX

* ESP는 들고 오지 않는다.

실습)



pushfd

- 플레그값을 저장하는 명령어

실습

- stack에 EFL 값 대입



popfd

- 플레그값을 들고오는 명령어

실습)

popfd 하기 전 EFL 값



popfd 한후 EFL값

- stack에 있던 값을 들고와 EFL에 대입


출처 : http://index2014.tistory.com/126



-----------------------------------------------------------------------------


자 여기까지가 이 팩에 대한 알아야할 기본 지식이다. 이 팩에서는 pushfd, pushad를 연속으로 씀으로써 플래그값 및 레지스터 정보를 다 저장하였다가 언팩하여 jmp 할때 해당 레지스터값을 복원하여 동작한다. 

nspack 확인


nspack에서 ep부분에 보이는 pushfd와 pushad 값을 확인할 수 있다. 

아래 보면 popad, popfd 후에 jmp를 하는것을 알 수 있다.


참고로 보면알겠지만 그냥 ctrl+f 눌러서 popfd하면 바로 나온다;; jmp에 bp걸고 ㄱㄱ 하면 끝 


이상 매우 쉬운 nsunpack에 대한 확인 및 언팩이였다....너무쉽다ㅣ

728x90
posted by 블르샤이닝 2014. 10. 30. 12:19
728x90

Exe32Pack 1.4x




Exe32Pack 1.4x (Unpacking).rar


해당 html문서를 보면 이미지와 내용으로 어느정도 알수 있다.


처음 ep부분에서 esp레지스터 값을 하드웨어 브레이크 포인트로 엑세스에 dword값으로 4바이트를 설정한 후 f9를 누르면 jmp eax 값이 뜬다. 해당 eax가면 oep가 되는것이다. 


이그림은 처음 올리디버거에 올라왔을때 ep 부분이며, 해당 esp값을 보면 0012ffc4로 되어있다. 해당 주소를 hex값으로 위에말한대로 bp를 걸고 f9로 진행한다


진행하다보면 최종적으로 JMP EAX값으로 뛰는 코드부분이 존재하며, 결국 해당 언팩된 OEP로 주소이동을 하게된다. 

(원래 문서나 다른팩에서는 바로 나오는데 여기선 f9 두번에 f8 3번정도 진행했더니 oep값이 나왔다 즉 바로 안나온다고 당황하지말고 좀더 코드를 따라가보면 된다)


이팩은 옛날거라 쉽다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ

728x90

'리버싱' 카테고리의 다른 글

unpackingyoda'scrypter1.3 (1).pdf  (0) 2015.05.27
nspack unpack  (0) 2014.11.07
RunAsInvoker 로 UAC 우회  (0) 2014.10.23
Other AntiDebug tricks  (0) 2014.10.22
ida 6,5 "win64_remotex64.exe" 리모트 디버깅을 위한 파일  (0) 2014.08.29
posted by 블르샤이닝 2014. 10. 23. 10:03
728x90
UAC를 굳이 무력화 시키거나 할필요없는것을 알았다...젠장 이거 악성코드에서 처음보는데 UAC 알림 기능을 OFF시키는 방법이란다; 거의 자료는 없군요; 

예로 다음과 같이 쓸수 있다고 한다. 
set __COMPAT_LAYER=RunAsInvoker 
start regedit.exe
악성코드에서의 쓰이는 방법




UAC - Is it better to use RunAsInvoker or to give Admin rights to the application users

Hi, I am working on migration of applications from XP to WIndows 7 environment. We have set of UAC non complaint applications which need to be migrated to win7. The issue is whether to use a shim (RunAsInvoker) or to give the users of these non complaint apps admin rights. My querries are : 1. Will it be a security breach if RunAsInvoker shim is applied to applications that are UAC non complaint?(We do not have manifest files to all the applications in this set to make changes and to make the apps understand UAC) 2. On applying the shim the user will no longer be prompted and so the basic functionality of the uac is changed and so it could be a security breach. Instead is it better to give the users of all these applicaitons be given admin rights, so that the prompt comes before launching the app and they still go on working? As any decision would affect a large number of users or would require a major change in the group policies, could you please suggest the most feasible and long term feasible solution to this issue. Thanks in Advance..


728x90

'리버싱' 카테고리의 다른 글

nspack unpack  (0) 2014.11.07
Exe32Pack 1.4x (Unpacking)  (0) 2014.10.30
Other AntiDebug tricks  (0) 2014.10.22
ida 6,5 "win64_remotex64.exe" 리모트 디버깅을 위한 파일  (0) 2014.08.29
마우스 포인트로 안티리버싱  (0) 2014.08.29
posted by 블르샤이닝 2014. 10. 22. 18:23
728x90

http://sandsprite.com/CodeStuff/scdbg_manual/MANUAL_EN.html


쉘코드 분석 툴


PDF에서 JS 코드 쉘 실행코드 부분인것같은데 이걸로 쉽게 분석했따고 하니....좋은것같군요 기능도 많고 




VS_LIBEMU-master.zip



728x90

'리버싱 > ' 카테고리의 다른 글

SSDEEP - 해쉬 유사도 비교 툴  (0) 2015.09.04
한글 문서 분석할때 유용한 툴  (0) 2015.06.23
[Portable_OllySND.exe] 포터블 올리디버거  (0) 2014.04.24
64비트 올리디버거  (0) 2013.11.20
XueTr툴  (0) 2011.08.05