본문 바로가기

Memo

아이다 헥스레이 디컴파일러 문제점(IDA hexray decompiler problem) 오랜만에 포스팅을 하게되었습니다. 잡글로 찾아뵙게 되네요..ㅠ IDA 디컴파일시 보통 아래와같이 디컴파일이 이루어집니다. char dest; // [sp+12h] [bp-202h]@1 char len1; // [sp+212h] [bp-2h]@1 char len2; // [sp+213h] [bp-1h]@1 주석을 보면 먼저 h는 16진수를 의미하니 10진수로 변환하면 다음과 같습니다. dest는 [sp+18][bp-514] len1은 [sp+530][bp-2] len2는 [sp+531][bp-1] 할당된 공간 514byte중 char형 변수 2개를 빼면 dest[512]가 되겠습니다. 따라서 위의 주석대로라면 현재 위 변수들이 스택에 올라왔을때의 상황은 아래와 같습니다. [ len2 1 byte] 높은주소.. 더보기
어셈블리어 상태 레지스터(assembly status register) 이번시간에 설명할것은 어셈블리어 상태 레지스터 입니다. 원래는 가장 많이 쓰이는 아래 올린 Intel x86 FLAGS register 기준으로 설명하려 하였으나 표 출처 : http://en.wikipedia.org/wiki/FLAGS_register Intel x86 FLAGS register[1] Bit # Abbreviation Description Category FLAGS 0 CF Carry flag Status 1 1 Reserved 2 PF Parity flag Status 3 0 Reserved 4 AF Adjust flag Status 5 0 Reserved 6 ZF Zero flag Status 7 SF Sign flag Status 8 TF Trap flag (single step).. 더보기
외국 Wargame 사이트 목록 http://www.overthewire.org/ Vortex Semtex Krypton Bandit Leviathan Narnia Behemoth Utumno Maze Manpage Monxla 등 다양한레벨의 문제제공. Bandit 부터 하시는걸 추천합니다. 저는 Bandit(clear) -> Narnia -> Leviathar 이런순서로 할예정입니다. 각 항목의 레벨 0이나 index에 들어가시면 기초지식으로 무엇이 필요한지 알수있습니다. http://smashthestack.org/wargames.php 해커스랩의 FreeHackingZone(http://www.hackerslab.org/korg/index.fhz?menu=fhz, 현재열려지않음)이나 해커스쿨의 FreeTraniningZone(f.. 더보기
간편한 RSA 인증 저는 서버에 접속할때 그동안 항상 아이디와 비밀번호를 치고 들어갔습니다.그러던 어느날 overthewire.org의 워게임을 해보면서 RSA키 인증을 알게되었습니다.예전에 RSA라 하면 공개키, 비밀키 이런 말을 주서들은것이 있는데요. 이것은 밑에서 알아보고 우선 키만드는 방법부터 보겠습니다. username@host ~$ ssh-keygen -t rsa쉘에 ssh-keygen -t rsa를 입력해주시면Generating public/private rsa key pair.공개/비밀 rsa키를 만든다캅니다.그렇다면 저 rsa대신에 dsa 라고치면 Generating public/private dsa key pair. 이런식으로 나오겠죠.여기선 RSA를 쓸것이기에 이부분은 스킵합니다. 다음으로 비밀키가 만들.. 더보기