일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- active reconnaissance
- 파일 업로드 취약점
- OS Command Injection
- Leviathan
- Authentication
- Cookie
- php 로그인 페이지 만들기
- BANDiT
- over the wire
- sql injection
- Reconnaissance
- access control
- War Game
- FTZ
- php 파일 업로드하기
- privilege escalation
- Cryptography
- php login page
- tryhackme
- Recon
- php To Do List
- php
- overthewire
- file upload
- ssrf
- THM
- php file upload
- active recon
- SQLi
- Server Side Request Forgery
- Today
- Total
R's Hacking Daily Log
Leviathan5 -> Leviathan6 본문
Connection : leviathan5@leviathan.labs.overthewire.org -p 2223
username : leviathan5
Kali linux - Terminal ]
./leviathan5 file을 실행해 보니 /tmp/file.log를 찾을 수 없다는 문구가 출력된다.
ltrace command로 출력된 내용에서는 fopen()을 볼 수 있다.
fopen() 안에 있는 parameter를 보니, 내용을 읽기 위해 /tmp/file.log를 열어라! 라는 코드이다.
즉 ./leviathan5는 /tmp/file.log 내용을 읽는 역할을 하는 것.
그렇기 때문에 /tmp/file.log라는 이름의 파일이 있어야 하는 거다..!!
그리고 한 가지 더.
./leviathan5는 owner가 leviathan6이고 owner에게 setuid가 설정되어있기 때문에
이 파일을 실행할 때는 잠시나마 leviathan6로 권한이 바뀌게 된다.
1. leviathan6로 권한이 바꿨을 때, leviathan6가 읽을 수 있는 파일 내용을 연결해 오자.
2. 그 내용을 꼭 있어야 하는 /tmp/file.log로 연결하자.
ln command를 이용하여 /etc/leviathan_pass/leviathan6 file과 /tmp/file.log를 연결한다.
간단히 말하자면,
/tmp/file.log는 이름이 /tmp/file.log일 뿐 /etc/leviathan_pass/leviathan6을 가리키는 link역할을 한다.
다른 사이트로 바로 가기 위해 걸어두는 링크 삽입 같은 거랄까(OoO)
leviathan6의 password가 들어있는 파일을 연결하고 나서, ./leviathan5를 실행하면
/etc/leviathan_pass/leviathan6에 직접적인 접근을 하지 않고도 내용을 출력시킬 수 있게 된다.
'OverTheWire > Leviathan' 카테고리의 다른 글
Leviathan7 -> Leviathan8 (0) | 2023.01.07 |
---|---|
Leviathan6 -> Leviathan7 (0) | 2023.01.07 |
Leviathan4 -> Leviathan5 (0) | 2023.01.07 |
Leviathan3 -> Leviathan4 (0) | 2023.01.06 |
Leviathan2 -> Leviathan3 (0) | 2023.01.06 |