본문 바로가기

리버싱7

써니나타스 10번 문제 써니 나타스 10번 문제를 보면 아래와 같이 딸랑 다운로드 버튼만 놓여져 있다. 일단 파일을 다운받고 x64dbg 에 넣어봤다. 입력값을 넣을 수 있는 창이 있고 아무 값이나 넣어봤을 때 'Try again' 가 나오니 '어떤 값을 넣고 답을 맞추는 거구나'라고 생각했다. x64dbg 자체로 디버깅을 할려고 했는데 문자열을 검색했을 때 아무것도 나오지않아서 당황했다. 뭔가 잘못하고 있는가 싶어서 HxD 로 헥사 값을 그대로 봤다. 'Did U use the Peid?' 라고 적혀있다. Authkey 라고 적혀있으니 저게 답이 아닐까 싶지만 Peid를 사용해보도록 한다. 검색하면 쉽게 다운받을 수 있다. 이는 보통 리버싱 전 파일의 특성을 파악할 수 있는 툴이다. C#으로 만들어졌고 .NET에 대한 정보는.. 2021. 3. 31.
[2020 하반기] 10/31 멘토링 4주차 리버싱 리버스 엔지니어링 (Reverse Enginerring RE:역공학) 소위 RCE,RE,역공학, 리버싱 등의 용어를 마구 섞어서 사용합니다. 분석방법 1) 정적 분석 실행 X 말 그대로 파일의 겉모습을 관찰하여 분석하는 방법 파일의 종류/ 크기/ 헤더(PE) 정보/ 내부 문자열/ 실행 압축 여부/ 등록 정보 등의 다양한 내용 확인 디스어셈블러(Disassembler)를 이용하여 내부 코드와 구조 확인 정적 분석을 통해 얻은 정보는 동적 분석에 참고 자료로 활용 2) 동적 분석 실행 O 행위 분석하고 디버깅을 통하여 코드 흐름과 메모리 상태 등을 자세히 살펴보는 방법 파일, 레지스트리(Registr), 네트워크 등을 관찰하며 행위 분석 디버거(Debugger)을 통해 프로그램 내부 구조와 동작원리 분석 패.. 2020. 10. 30.
Base Relocation Table 오늘은 PE 파일의 재배치 (Relocation) 과정에 사용되는 Base Relocation Table의 구조와 동작원리에 대해 알아보겠습니다. -PE 재배치 PE파일(EXE/DLL/SYS) 이 프로세스 가상 메모리에 로딩(loadiong) 될때 PE 헤더의 ImageBase주소에 로딩 됩니다.(ImageBase 주소는 NT Header에 Optional Header 안 에 있습니다.) DLL이나 SYS 같은 경우 ImageBase 위치에 이미 다른 파일이 로딩되어있다면 충돌을 비해 다른 비어있는 주소 공간에 로딩됩니다. 이를 PE Relocation 이라고 합니다. -> PE파일이 ImageBase에 로딩되지 못하고 다른 주소에 로딩될때 수행되는 일련의 작업들 의미. 참고) ImageBase EXE .. 2020. 5. 1.
실행 압축 실행 압축(Run-Time Packer)는 소트웨어 역공학의 단골 주제입니다. 오늘은 이에 대해 알아봅시다. 1. 데이터 압축 우리가 일상에서도 자주 쓰고있는 게 데이터 압축입니다. 어떤 형태의 파일이나 데이터라도 내부는 바이너리로 되어 있기 때문에 압축 알고리즘을 사용하여 크기를 줄일 수 있습니다. 이 때 압축 본을 100% 복원 시킬 수 있다면 비손실 압축(Lossless Data Compression) 이라고 하고 복원할 수 없다면 손실압축(Loss Data Compression) 이라고 합니다. -비손실 압축 : 7-zip, 빵집과 같은 압축 프로그램을 이용해서 파일을 압축시키는 경우가 비손실 압축의 예에 해당합니다. 대표적인 예로는 Run-Length,Lempel-Ziv,Huffman 등이 있습.. 2020. 4. 28.