일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- buffer over flow
- 어셈블리어
- termux
- 웹해킹
- Shadow 동아리
- 리눅스
- SQL Injection
- 버퍼오버플로우
- CodeEngn
- requests
- ctf
- PWN
- Nop Slide
- BOF
- 뉴스클리핑
- Hackerschool
- RITSEC
- reversing
- NewsClipping
- Linux
- ftz
- Python
- RITSEC CTF 2019
- x64dbg
- 리버싱
- HackCTF
- writeup
- 보안뉴스
- Next.js
- webhacking
- Today
- Total
목록PWN (12)
Jaeseo's Information Security Story

999 Bottles 문제구분 난이도 작성자 PWN 하 JaeSeoKim 문제 내용 문제 풀이 일단 999개의 ELF파일중 하나를 IDA로 통해 한번 열어봅니다. int __cdecl main(int argc, const char **argv, const char **envp) { char v4; // [esp+Bh] [ebp-Dh] unsigned int v5; // [esp+Ch] [ebp-Ch] v5 = __readgsdword(0x14u); /* ...................안쓰는 변수 생략................. */ p = 70; puts("What is my character?"); __isoc99_scanf("%c", &v4); if ( v4 == p ) puts("OK!");..
FTZ - level13 - WriteUp level13:have no clue 일단 HINT를 보고 시작합니다! [level13@ftz level13]$ cat hint #include main(int argc, char *argv[]) { long i=0x1234567; char buf[1024]; setreuid( 3094, 3094 ); if(argc > 1) strcpy(buf,argv[1]); if(i != 0x1234567) { printf(" Warnning: Buffer Overflow !!! \n"); kill(0,11); } } 이번에는 기존의 level11, level12 문제와 달리 중간에 있는 i의 데이터가 수정이 되면 경고가 뜨고 프로그램이 강제로 종료 되는 조건문이 추가 되어..
FTZ - level12 - WriteUp Level12:it is like this 일단 hint를 보고 문제를 풀어봅니다. [level12@ftz level12cat hint #include #include #include int main( void ) { char str[256]; setreuid( 3093, 3093 ); printf( "문장을 입력하세요.\n" ); gets( str ); printf( "%s\n", str ); } 일단 이번에도 level 11 과 같이 bof를 일으켜 level13의 권한으로 shell를 띄우거나 my-pass명령어를 실행해야 하는 것으로 보입니다. 소스코드를 이용해서 디버깅용 프로그램을 만들어 gdb로 분석을 해봅니다. (gdb) set disassembly..
FTZ - level11 - WriteUp level11:what!@#$? 이번 문제는 bof의 개념에 대해 확실히 공부하게 되는 좋은 문제였습니다. bof에 대해 개념이 부족하시다고 생각하시는 분은 달고나 bof기초문서를 꼭 한번 읽어보시고 하시는 게 좋습니다. 일단 Hint파일을 봅니다. [level11@ftz level11]$ cat hint #include #include int main( int argc, char *argv[] ) { char str[256]; setreuid( 3092, 3092 ); strcpy( str, argv[1] ); printf( str ); } [level11@ftz level11]$ ls -la | grep attackme -rwsr-x--- 1 level12 ..