| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- cloud run
- 사이버보안
- node.js
- Batch
- 웹해킹
- Baekjoon
- pwnable.xyz
- 백준
- Python
- 네트워크
- spring Batch
- gcp ci/cd
- webhacking.kr
- gcp cloud build
- 포너블
- 프로그래머스
- gcp
- 웹보안
- hackctf
- sequelize
- 리버싱
- 시스템 해킹
- 파이썬
- nodejs
- 스프링 배치
- 보안
- 회고
- programmers
- kotest
- docker
Archives
목록ADD (1)
uju's Tech
Ida를 사용해서 main함수를 살펴보자. 위에서 memset함수는 어떤 메모리의 시작점 부터 연속된 범위를 어떤 값으로 모두 지정하고 싶을 때 사용하는 함수이다. 따라서 1바이트마다 0으로 초기화하고 50바이트를 반환한다는 뜻이다. Ret 주소=0x7fffffffdfd0+8=0x7fffffffdfd8 Ret주소 위로 rbp 위로 v8,v7,v6,v5,v4, V6=0x68 V7=0x60 V8=0x8 0x60-0x8=88 88/8=11-->11*8바이트 V7[v6]=v4+v5 여기서 취약점이 발생한다, V6를 조절하여 ret값으로 만들고 v4+v5를 win함수 주소 값으로 만들어준다. 그러면 win함수로 리턴이 된다. 스택을 생각해보면 ret은 v7위치인 rbp- 0x60에서 rbp+0x8로 만들어 주어야..
Security/pwnable.xyz
2020. 6. 13. 03:23