반응형
(2021.07.08) github.com 에도 제 계정을 생성하여 소스코드 및 실습예제를 올렸습니다.
github 에 익숙하신 분들께서는 이곳을 이용하시면 됩니다.

https://github.com/reversecore/book

 

1. 소스 코드 (ver 1.0.2)

 

소스코드.zip
0.25MB

* 암호 : reversecore

< 릴리즈 히스토리 >

ver 1.0.2 - "44장 InjDll.exe - DLL 인젝션 전용 도구" InjDll.cpp 오류 수정 (20121110)

ver 1.0.1 - "33장 스텔스 프로세스" 프로젝트 소스 보기 오류 수정 (20121008)

ver 1.0.0 - 첫 릴리즈 (20120928) 

 

< 참고 >

 

* 모든 소스 코드는 MS Visual C++ Express 2010 으로 개발되었습니다.

* 소스 코드를 이용하여 빌드한 결과 파일은 사용자 환경에 따라 약간씩 달라질 수 있습니다.

* 책의 설명과 동일하게 디버깅 하기 위해서는 첨부한 예제 파일을 사용하시기 바랍니다. 

 

2. 실습 예제 파일 (ver 1.0.1)

 

* 2중 압축 되어 있습니다. (압축 풀면 실습예제.zip 이 생성됩니다. 이를 다시 압축 해제 해주세요.)

* 암호 : reversecore

 

< 릴리즈 히스토리 >

 

ver 1.0.1 - "1장 리버싱 스토리" 예제 변경 (20130401)

ver 1.0.0 - 첫 릴리즈 (20120928)

< 참고 >

* "실습예제.zip" 파일은 Anti-Virus 제품의 실시간 검사를 피하기 위하여 2중 압축 되어 있습니다.

* "5부 - 64비트 & Windows Kernel 6" 의 실습 예제 파일을 실습 하기 위해서는 Windows XP/Vista/7 64bit 환경이 필요합니다.

* 5부를 제외한 나머지 모든 실습 예제 파일은 MS Windows XP SP3 32bit & Windows 7 32bit 에서 테스트 되었습니다.

* 만약 64bit 환경에서 실습을 진행하기 위해서는 다음 포스팅에 나타난 방법을 참고하시기 바랍니다.

 

    64bit 환경에서 OllyDbg 사용할 수 있는 방법

* 중요!!!

일부 Anti-Virus 제품에서 실습 예제 파일의 일부가 악성 파일로 진단될 수 있습니다.

그 이유는 예제에서 사용된 기법들이 기존의 악성 파일에서 사용된 기법과 동일하기 때문에 AV 휴리스틱 엔진에서 그 부분을 탐지하여 악성 파일로 잘 못 진단할 수 있기 때문입니다.

 

전혀 악성 파일이 아니므로 아래 설명을 잘 읽어 보시고 실습해 보시기 바랍니다.

 

1) UPack 패커와 UPack 으로 패킹된 실습 예제가 진단될 수 있습니다.

이는 패커 자체가 PE 헤더를 심하게 훼손시켜서 Black 리스트에 포함되었고, 또한 몇 년전에 많은 악성 코드들이 UPack 으로 실행압축 되었기 때문에 이젠 대부분의 AV 에서 UPack 자체만으로도 악성 파일로 진단해 버립니다.

그렇다고 UPack 자체와 이걸로 패킹된 실습 예제가 악성 파일은 아닙니다. 

다만 리버싱 기술 설명을 위해 AV 업계의 권고사항을 따르지 않은것 뿐입니다.

PE 파일 설명에 UPack 만큼 좋은 예제가 드물기 때문에 이런 불편함에도 예제로 사용하였습니다.

 

2) '고급 리버싱', '안티 디버깅' 예제 일부가 악성 파일로 진단될 수 있습니다.

이 예제 파일 역시 악성 파일에서 사용되는 것과 동일한 기법을 사용했기 때문에 AV 휴리스틱 엔진에서 그 부분을 탐지한 것입니다.

실습 파일 자체는 아무런 악성 행위를 하지 않는 정상 파일입니다.

3) 시간이 지난 후에 멀쩡한 예제 파일들이 악성으로 진단될 수 있습니다.
예제 파일이 퍼져서 AV 업체에 접수되어 자동 분류 시스템에 의해 만에 하나 '악성'으로 분류될 수도 있습니다.악성 파일에서 안티 디버깅에 사용되는 SEH, TLS Callback 기법을 구현하였기 때문입니다.이 기법 자체만으로는 아무런 악성 증상이 없습니다. 다만 AV 엔진의 휴리스틱 진단에서 이 부분을 탐지 할 가능성이 있다는 것이죠.

4) 그렇다면 진짜 악성 파일이란 어떤 것일까요?

사용자 몰래 시스템에 숨어 들어서, 자동으로 실행 되며, 개인 정보를 무단으로 수집하고, 수집한 정보를 외부로 유출하는 등의 악의적인 행위를 하는 파일들입니다. 

즉, 악성 파일이란 사용자에게 크던 작던 피해를 입히는 파일들을 말하는 것이죠.

실습 예제 파일들은 특정 리버싱 기법을 위해 만들어진 단순한 파일들 입니다. 악성 증상은 전혀 없습니다. ^^~

 

5) 실습 환경 PC 에서는 잠시 AV 제품의 "실시간 감시" 기능을 꺼두시기 바랍니다.

물론 실습을 마치셨다면 실시간 감시를 다시 켜주시는 것이 좋습니다.

 

6) Windows 7 에서 실습을 하시는 경우 UAC(User Access Control) 기능을 끄고 하시면 편리합니다.

 

 

혹시 다운로드가 잘 안되거나 AV 진단 관련하여 궁금하신 점은 이곳에 질문해 주세요~

 

감사합니다.

 

반응형
반응형


The New iPad 의 핵심은 레티나 디스플레이와 이를 잘 활용한 애플의 킬러 앱인 iWork(Pages, Numbers, Keynotes) 와 iLife(GarageBand, iMovie, iPhoto), 그리고 3rd party 제작사들의 수준 높은 앱 이라고 생각합니다. 특히 iWork 와 iLife 세트는 모두 구입해도 $45 밖에 안하면서 한번의 구매로 iPhone 과 iPad 를 동시에 지원하는 유니버셜 앱입니다. 꾸준한 업데이트로 새로운 기능도 추가되고요. 그리고 iCloud 를 이용하여 '여기서 하면 저기서도 되있고' 기능이 지원됩니다.

애플이 직접 제작한 iWork 와 iLife 의 데모를 보면 정말 감탄스러운게 철저히 초보 사용자 관점에서 설계되었다는 겁니다. 애플이 제작한 아이패드 앱 중에서 매뉴얼이 필요한 건 거의 없다고 보시면 됩니다. 너무 직관적이라서 누구나 쉽게 동영상을 편집하고 음악을 만들고 사진을 편집할 수 가 있습니다. SW 업종에 종사하는 제 눈에는 그런 점이 너무 신기하게만 보입니다. 간단한 GUI 를 제공하지만 어떤 프로그램보다도 더 고민하고 더 힘들게 만들었을 것 같다는 느낌이 들어요. 이런 수준 높은 SW 를 구동할 수 있는 테블릿이 아직까진 (근 미래에도) iPad 뿐입니다.

The New iPad 는 이러한 양질의 컨텐츠를 잘 돌릴 수 있도록 하드웨어가 설계되었습니다. 또한 이러한 양질의 컨텐츠는 하드웨어 판매의 견인차 역할을 톡톡히 합니다. 하드웨어와 소프트웨어가 서로 선순환 구조를 형성합니다. 현재로선 하드웨어와 소프트웨어를 동시에 잘 하는 회사는 애플이 유일한데, 자신의 장점을 아주 잘 살려서 전략적으로 앞서 나가고 있습니다. 따라서 당분간 테블릿(Post PC) 분야에서 iPad 는 넘사벽 지위를 몇 년간 더 유지할 것으로 생각됩니다.

참고로 Microsoft 창업주 빌 게이츠는 기회가 있을때마다 애플의 폐쇄적인 HW & SW 동시 구현 전략을 이상하다고 말하곤 했습니다. 실제로도 시장에서는 IBM 호환 PC에서 구동되는 Windows 가 승리하였습니다. 하지만 애플의 스티브 잡스는 끝까지 같은 전략을 밀어 부쳤습니다. 결국 뒤를 이은 MAC 의 디지털 허브 전략으로 인기를 얻고, 초대박 Post PC 전략으로 iOS 생태계를 완벽히 구축하면서 상황을 완전히 역전시키고 말았습니다. Post PC 전략의 핵심이 바로 폐쇄적인 하드웨어와 소프트웨어의 동시 구현입니다. 새로운 패러다임에서 경쟁자보다 훨씬 더 빠르게 움직이며 한번 잡은 승기를 놓치지 않고 오히려 경쟁자들과의 격차를 계속 벌리고 있습니다. 이게 다 하드웨어와 소프트웨어를 동시에 구현하는 능력이 있기 때문입니다. 

조만간 iPad 보다 하드웨어 성능이 더 좋은 안드로이드 테블릿들이 쏟아져 나올 것입니다. 하지만 iPad 수준의 편리한 소프트웨어 사용자 경험을 제공하지 못한다면 또 조용히 잊혀지겠지요? 즉, 하드웨어만 좋아서는 성공하지 못하고 소프트웨어도 같이 좋아야 한다는 의미입니다. 이처럼 소프트웨어와 컨텐츠의 위상이 점점 높아져 가는 모습을 보면서 저는 참 기분이 좋습니다.


ReverseCore

반응형

+ Recent posts