728x90
오늘은 DreamHacker의 웹 해킹 워게임 중 하나인 command-injection-1를 함께 풀어볼 예정이다.
command-injection-1
특정 Host에 ping 패킷을 보내는 서비스입니다. Command Injection을 통해 플래그를 획득하세요. 플래그는 flag.py에 있습니다. Reference Introduction of Webhacking
dreamhack.io
1. ## 문제 설명:

문제 정보를 살펴보면 Command Injection 공격을 통하여 flag를 획득하면 되는 것으로 보인다.
2. ## 문제 풀이
사이트에 접속해보니 다음과 화면이 보인다.

Ping 버튼을 클릭하면 다음과 같이 ping test를 할 수 있는 화면이 출력된다.


소스 코드를 확인해보면 동작 과정은 다음과 같다.

ping -c 3 {host}를 통해 결과를 출력하고 있다. 해당 소스 코드를 보면 command injection공격에 대한 필터링 기법이 적용되어 있지 않는 것을 알 수 있다.

반면 HTML문서에 정규식을 통해서 필터링을 처리하고 있다. 해당 처리는 개발자도구를 통해 간단하게 없앨 수 있다.

위와 같은 command injection 공격 구문을 입력하여 flag.py 파일 내용을 확인해보겠다.

FLAG가 성공적으로 출력된 것을 확인할 수 있다.
'Wargame > DreamHack' 카테고리의 다른 글
[DreamHack 워게임] web-ssrf (0) | 2023.04.06 |
---|---|
[DreamHack 워게임] blind-command (0) | 2023.04.05 |
[DreamHack 워게임] login-1 (0) | 2023.04.03 |
[DreamHack 워게임] image-storage (0) | 2023.04.02 |
[DreamHack 워게임] simple-ssti (0) | 2023.04.01 |