Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 스캐닝
- 스캔
- 해킹
- Samba
- Kioptrix
- smb
- Metasploit
- Hacking
- 포트스캔
- 메타스플로잇
- load of sqlinjection
- 해킹툴
- SQL Injection
- 내부침투
- 권한상승
- 모의해킹
- web hacking
- SQLINJECTION
- 취약점분석
- Los
- CTF
- 침투테스트
- sql
- 시스템 해킹
- 취약점 스캔
- root권한
- 해킹도구
- 암호해독
- 칼리리눅스
- 취약점
Archives
- Today
- Total
감자 텃밭
[시스템] Gadget 가젯 본문
Gadget의 본래의 개념은 프로그램 상에서 코드 조각을 지칭하였으며,
프로그램 내에 존재하는 명령어 조각 이다.
기존 프로그램에 존재하지만 libc파일에도 존재한다.
포너블(시스템 해킹)에서 주로 바이너리해킹에서 가젯을 사용하는경우
ret로 끝나는 연속된 명령어들을 의미하기도 한다.
주로 pop pop pop ret; 형식이며 여기서 pop은 호출된 함수에서 인자를 정리해주는 용도이다.
즉 read(0, buf, 64) 형식의 read()함수를 호출 했을시 인자값이 0, buf, 64 로 3개이므로
3개의 인자를 정리하기위해 pop pop pop를 쓰는것이다 그 후 ret;로 원하는 함수를 다시 한번 호출 할 수 있다.
|
|
|
|
대표적으로 ROP 기법에서 주로 쓰이며
아래와 같은 특징이 존재한다.
1. 프로시저를 사용하는 대신에 Gadget들을 이용
2. 모든 Gadget은 ret으로 끝나야 한다.
3. Gadget은 의도된 특정 행동을 수행한다.
4. 공격자는 여러 개의 Gadget을 조합해 공격의 정교함을 더할 수 있다.
참고자료
https://shayete.tistory.com/entry/6-Return-Oriented-Programming
※ 내용이 이상하거나 문제가 있을경우, 또는 설명에 부족한 내용이 있으시면 알려 주시면 감사합니다.
'System > System Theory Information' 카테고리의 다른 글
[시스템] 바인드 쉘[Bind Shell], 리버스 쉘[Reverse Shell] (1) | 2021.12.09 |
---|---|
[시스템] Memory-leak 메모리 누수 (0) | 2021.11.22 |
[시스템] libc-Database (0) | 2021.11.21 |
[시스템] 리틀 에디안 방식 (0) | 2021.11.20 |
[시스템] PLT 와 GOT [초급] (1) | 2021.11.19 |