Command Injection은 웹페이지에서 DOS, Linux 명령어를 실행하도록 구현되어 있을 때,
공격자가 임의의 명령어를 삽입해 정보를 탈취하거나, 악성코드를 실행하도록 유도할 수 있는 공격이다.
현재 Windows 10으로 풀이를 하고 있어 cmd /c 이후 help 페이지의 내용을 읽는 DOS 명령어(type)를 사용하고 있다.
select 태그 쪽을 살펴보자. 2번째 옵션을 수정할 것이다.
이렇게 수정하면
cmd /c type "...\Backdoors.help"가 먼저 실행되고, 자기 자신에게 ping을 날리게 된다.
DOS의 &는 Linux의 ;와 같이 두 명령어를 한 줄에 작성할 수 있게 하여, 작성된 모든 명령어를 실행하게 한다.
(참고로 Pipe와는 다르다. Pipe는 | 기호 왼쪽 명령의 결과를 오른쪽 명령으로 전달시키기 때문에 그 기능이 좀 다르다.)
2번째 옵션을 선택한 후, View를 누르면
페이지를 읽은 후 ping을 실행하는 모습을 볼 수 있다.
'[Wargame Write-up] > WebGoat' 카테고리의 다른 글
[WebGoat] [Injection Flaws] Log Spoofing (0) | 2016.12.29 |
---|---|
[WebGoat] [Improper Error Handling] Fail Open Authentication Scheme (0) | 2016.11.15 |
[WebGoat] [Injection Flaws] Database Backdoors (0) | 2016.10.27 |
[WebGoat] [Injection Flaws] String SQL Injection (0) | 2016.10.27 |
[WebGoat] [Injection Flaws] Numeric SQL Injection (0) | 2016.10.27 |