Security
-
바이트 오더링Security/Reversing 2020. 3. 6. 15:44
Little Endian : LSB최하위 바이트 부터 차례로 저장하는 방식 Big Endian : LSB최상위 바이트 부터 차례로 저장하는 방식 * 16 진수는 2개가 1바이트이므로 두개씩 묶어서 저장된다. EX) 빅 엔디언 0x12345678이 들어갈 때 메모리 주소 ... 0x1000 0x1001 0x1002 ... 변수 값 ... 0x12 0x34 0x56 ... - 자료형별 저장 TYPE NAME SIZE 빅엔디언 리틀엔디언 BYTE b 1 12 12 WORD w 2 12 34 34 12 DWORD dw 4 12 34 56 78 78 56 34 12 char str[] = "abcde" str 8 61 62 63 64 65 00 61 62 63 64 65 00 문자열의 경우에는 리틀엔디안과 빅엔디..
-
OllyDbg 자주쓰는 단축키Security/Reversing 2020. 2. 27. 04:02
BreakPoint(BP를 설정) : F2 Restart(처음 부터 디버깅 시작) : Ctrl+F2 Step into(하나의 OP code 실행, CALL 명령을 만나면 함수 코드 내부로 들어감) : F7 Step Over(하나의 OP code 실행, CALL 명령을 만나면 함수 코드 내부로 들어가지 않고 함수 자체를 실행함) : F8 Continue(BP까지 실행) : F9 Execute till Return(함수 코드내에서 리턴 명령어까지 실행) : Ctrl+F9
-
ReversingSecurity/Reversing 2020. 2. 27. 03:56
Reversing Engineering, RE 역공학 1) 정적 분석 파일을 실행하지 않고 분석 파일의 종류, 크기, 헤더(PE)정보, import/export API 등을 확인하거나 디스어셈블러를 이용하여 코드와 구조를 확인하는 것이 포함된다. 2) 동적 분석 파일을 실행해서 행위를 분석 디버깅을 통해 코드의 흐름이나 메모리 상태를 관찰하거나 파일, 레지스트리, 네트워크 등을 관찰하면서 프로그램의 행위를 분석하는 것이 포함된다. - Patch 패치는 프로그램의 파일이나 실행중인 프로세스 메모리의 내용을 변경하는 작업이다. 패치는 보통 프로그램의 취약점 수정과 기능 개선이다. ex ) 윈도우 업데이트 등 - Crack 크랙은 패치와 같은 개념이지만 그 의도에 있어 비도덕적이거나 비합법적인 경우를 따로 구..
-
Easy KeygenSecurity/Reversing.kr 2020. 2. 21. 21:08
[Reversing.kr] Easy Keygen 실행하면 name값과 serial값을 입력받는다. serial값이 위 값이 되실 때 name을 구하면 된다. sprintf 함수에서 0x10 0x20 0x30 을 반복하며 xor 연산을 해준다. sprintf(result, "%s%02X", a, b ); - sprintf(buf*, "format", 인자1, 인자2, 인자3 ... ) 버퍼에 해당 포맷으로 값을 넣어준다. 어쨋든 각각의 자리에 ^10 ^20 ^30 을 반복해 serial값을 구해주면 5B 13 49 77 13 5E 7D 13 4B 33 79 67 33 6E 6D 33 답 : K3yg3nm3