-
PE 구조 (7) RVA to RAW 변환 방법Knowledge/Reversing 2019. 9. 28. 16:08
안녕하세요. 오늘은 계산기는 잠시 갔다 버리고 RVA를 RAW로 변환하는 방법에 대해서 알아보려 합니다. 하지만 예제로 계산기가 튀어 나올듯한 불길한 예감... 지난 섹션 헤더 글을 보신 분이라면 RVA가 어떤 녀석인지 대충 아실 것입니다. RAW는 파일 오프셋 값을 말한다. 다음에 작성할 data directory의 주소 맵핑을 하기 위해서는 RVA to RAW를 알아야한다. 역시 예를 들기 위해서 계산기를 사용해야 할 것 같다. """ 대망에 DataDirectory부분이다. 4바이트 변수 2개를 갖고 있는 구조체 배열로 하나당 8bytes씩 보면 된다. 첫번째는 가상주소 값이고 두번째는 사이즈를 표시한다. [0]에는 값이 없으므로 넘어가고 [1]인 Import값을 확인해 보자. 80 2B 01이 주..
-
14회 정보보안 산업기사 필기 합격 후기정보보안기사 2019. 9. 27. 13:16
안녕하세요. 오늘은 두번의 도전 끝에 드디어 필기 합격을 한 정보보안 산업기사 필기 합격 후기를 적어보려합니다. 사실 그냥 제 일기에요. 다 나가주세요.. 평균 68.75 간당하다면 간당할 수있고 평균 합격점수라고도 부를 수 있는 무난한 점수로 나왔다. 어플리케이션 보안과 정보보안 일반과목이 어려웠던 시험이였다. 실수도 많아서 사실 떨어질 줄 알았는데 햇갈린 내용들을 잘 찍은 운좋은 시험이였던 것 같다. 지난 13회차를 처음 준비하며 풀 때는 확실히 문제은행은 개뿔 풀던 문제들과 다른 유형도 많이 나오고 전혀 모르는 내용이라 찍은 것도 많아서 55, 55, 55, 55로 떨어졌었는데 이번 시험을 볼 때의 차이점이라 하면 모르는 문제라고 하기보다는 햇갈리는 문제가 많았다. 이건가 저건가.. 둘다 아는 거지..
-
PE 구조 (6) - 계산기의 PE 구조 / SECTION HeaderKnowledge/Reversing 2019. 9. 26. 13:07
오늘은 계산기의 SECTION HEADER 구조에 대해서 공부할 차례이다. 이번 챕터를 지나고 나면 저번글에서 언급하지 못했던 Image data directory를 볼 것이다. 우선 섹션 해더의 구조를 살펴보자. #define IMAGE_SIZEOF_SHORT_NAME 8 typedef struct _IMAGE_SECTION_HEADER { BYTE Name[IMAGE_SIZEOF_SHORT_NAME]; union { DWORD PhysicalAddress; DWORD VirtualSize; } Misc; DWORD VirtualAddress; DWORD SizeOfRawData; DWORD PointerToRawData; DWORD PointerToRelocations; DWORD PointerToL..
-
PE 구조 (5) - 계산기의 PE 구조 / NT HEADER - IMAGE OPTIONAL HEADER 분석Knowledge/Reversing 2019. 9. 25. 02:11
오늘은 계산기의 NT Header에서 IMAGE OPTIONAL HEADER에대해서 분석하려고 한다. 꽤나 중요한 녀석임으로 차근차근히 분석을 시작해보자. 우선 복습을 위하여 몇 가지 저번에 배운 내용을 확인해보자. 이것이 calc.exe의 NT header 영역이다. 그리고 NT header 구조체는 typedef struct _IMAGE_NT_HEADERS { DWORD Signature; IMAGE_FILE_HEADER FileHeader; IMAGE_OPTIONAL_HEADER32 OptionalHeader; } IMAGE_NT_HEADERS32, *PIMAGE_NT_HEADERS32; 로 정의되어 있고 지난 포스터에서 FileHeader 부분을 알아봤었다. https://shineild-secu..
-
TIM CTF - easyrev Write upCTF/Rev 2019. 9. 24. 14:45
TIM CTF가 최근에 막을 내렸다. 필자는 비교적 가벼운 난이도의 문제만 풀었지만 킹갓 대한민국의 다른 팀들이 본선에 진출하여 대거 루마니아행 비행기를 끊었따는 소식을 들었다. 모두들 화이팅! ----------------- 코드만 이해할 수 있다면 쉬운 easyrev 풀이를 포스팅해보도록 하자! undefined8 main(void) { int iVar1; size_t sVar2; int local_1c; printf("Enter password: "); scanf("%s",password); sVar2 = strlen(password); if (sVar2 < 0x41) { sVar2 = strlen(password); if (sVar2 < 8) { puts("Error: password too sh..
-
PE 구조 (4) - 계산기의 PE 구조 / NT HEADER - IMAGE FILE HEADER 분석Knowledge/Reversing 2019. 9. 20. 01:40
오늘 알아볼 내용은 NT Header이다. NT Header는 3가지 변수로 정의되어 있는 구조체이다. typedef struct _IMAGE_NT_HEADERS { DWORD Signature; IMAGE_FILE_HEADER FileHeader; IMAGE_OPTIONAL_HEADER32 OptionalHeader; } IMAGE_NT_HEADERS32, *PIMAGE_NT_HEADERS32; Signatere는 4bytes 짜리 변수로 보통 50 45 00 00으로 되어있다. word가 아니라 dword로써 00 00까지 시그니쳐 범위라는 것을 명심하도록 하자. 그다음으로 나오는 것은 IMAGE_FILE_HEADER 구조체인 FileHeader이다. IMAGE_FILE_HEADER는 어떠한 구조체인..
-
PE 구조 (3) - 계산기의 PE 구조 / PE offset 확인하는 법Knowledge/Reversing 2019. 9. 18. 17:31
안녕하세요. 오랜만에 PE 구조 관련글을 다시 적게 되었습니다. 요즘 자격증 공부로 바빠서 하지 못했던 개인 공부들을 다시 시작하며 밀렸던 글들을 적어나가려고 한다. 인터넷에는 대부분 32bit notepad로 PE구조를 분석한 글들이 많이 있다. 그 이유는 아마 리버싱 핵심원리 책에서 예로 든 프로그램이 바로 이 메모장이여서 그런게 아닐까하는 생각이 든다. 그래서 지난번 글에선 필자도 메모장으로 글을 포스팅했었지만 이번엔 필자의 실습을 위해서 계산기를 직접 offset을 알아보려고 한다. 오늘 볼 파일은 calc.exe(x86)이다. feat.windows xp 오늘 필자가 분석할 큰 구조는 이렇게 나뉘어진다. Header DOS Header DOS Stub NT Header Section Header..
-
[정보보안 기사/산업기사 - 정보보안 일반] 오답노트정보보안기사/오답노트 2019. 8. 29. 22:15
오답노트를 적을 생각을 하게 된건 단순히 저번 시험에서 떨어지고 나서 다시 공부하면서가 아니다. 반년전에 풀었던 문제임에도 불구하고 또 정답이 기억이 안나고 다시 틀리는 것을 반복하고 여러 회차를 풀어도 기억안나는 문제는 여전히 틀리는 내 자신을 보며 다시한번 기억력 ㅆㅎㅌㅊ의 금붕어를 빙의한 내 인생에 감탄하며 글을 적어 남기기로 작심했다. 1 ~ 3 회차 문제는 이미 풀어서 여기에 포함되어 있지 않습니다. 공인인증서 (4회 73번, 5회 62번) 공인인증서 포함 목록 가입자의 이름(법인인 경우 법인명) 가입자의 전자서명검증정보 가입자와 공인인증기관이 이용하는 전자서명 방식 공인인증서의 일련번호 공인인증서의 유효기간 공인인증기관의 명칭 등 공인인증기관임을 확인할 수 있는 정보 공인인증서의 이용범위 또는..