Iriton's log

[Dreamhack/Wargame] Lv.1 command-injection-1 본문

WebHacking/WarGame

[Dreamhack/Wargame] Lv.1 command-injection-1

Iriton 2023. 4. 10. 16:27

Command Injection

Web application에서 시스템 명령을 사용할 때, ;(세미콜론) 혹은 &(또는 &&)을 사용하여 하나의 command를 injection 하여 두 개의 command가 실행되게 하는 공격이다.

 

 

문제 페이지 분석


Home

ping

ping 정보가 출력된다. 여기서 Flag를 출력할 수 있을 거 같다.

코드를 확인해 보자.

 

 

코드 분석


6) flag.py에 flag값이 있나 보다.

22) bash쉘 파일로 접근해서 command를 실행시킨다. 리눅스 명령어로 command injection이 필요할 것으로 보인다.

 

다른 코드는 별로... 쓸모는 없을 거 같아서 pass

 

 

 


ping result 출력을 활용해서 flag.py의 위치를 알아내 볼 수 있을 거 같다.

ls 명령어를 활용하자.

 

입력값이 cmd로 전달되니 cmd 형식을 잘 보면 무엇을 입력해야 되는지 감이 온다

cmd에 쓰이는 double quotes를 임의로 내가 닫고 열면 command injection 할 수 있다.

 

... 형식이 뭐길래

소스 코드를 확인해 보자.

 

 

36번 줄을 보면 pattern으로 형식을 제한한다.

그냥 지워 버리자.

 

이제 정상적으로 명령이 먹힌다.

그리고 해당 경로에 flag.py가 있단 것도 확인할 수 있으니 flag.py 내용을 출력하자.

 

명령어는 cat 활용

 

 

'WebHacking > WarGame' 카테고리의 다른 글

[Dreamhack/Wargame] Lv.1 crsf-1  (0) 2023.04.11
[Dreamhack/Wargame] Lv.1 image-storage  (0) 2023.04.10
[Dreamhack/Wargame] Lv.1 xss-2  (0) 2023.04.10
[Dreamhack/Wargame] Lv.1 xss-1  (0) 2023.04.10
[Dreamhack/Wargame] Lv.1 session-basic  (0) 2023.04.07
Comments