일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 정보보안
- 써니나타스
- XSS
- Los
- 워게임
- Weak Session IDs
- 해커팩토리
- Lord of SQL Injection
- Cross Site Scripting
- Dremhack
- Remote File Inclusion
- 드림핵
- 웹 해킹
- 정보보호
- Hackerfactory
- bypass CAPTCHA
- webhacking.kr
- wargame
- 빡공팟 6기
- DOM-Based XSS
- Web Hacking
- DreamHack
- Insecure CAPTCHA
- SuNiNaTas
- 빡공팟 4기
- sql injection
- TeamH4C
- H4CKINGGAME
- DVWA
- File Upload Vulnerability
- Today
- Total
도카이트
[DVWA] Command Injection (Low) 본문
Command Injection
웹 요청 메시지에 임의의 시스템 명령어를 삽입하고 전송하며,
웹 서버에서 해당 명령어를 실행하도록 하는 공격을 의미한다.
페이지 화면
- IP를 입력할 수 있는 폼이 화면에 보인다!
- 그래도 아직 잘 모르니 먼저 해당 문제의 소스코드를 살펴보도록 하자.
소스코드
- 사용자가 IP를 입력하고 submit을 클릭하면..
- 입력한 IP를 대상으로 ping을 총 4번 보내는 코드인 듯하다.
- $cmd 변수와 shell_exec로 보아 운영체제의 명령을 실행할 수 있으며
- Command Injection 공격에 취약한 부분이 있을듯 하다!
- 먼저 해당 기능이 잘 작동하는지 확인하기 위해 임의의 IP 주소를 입력해보도록 하자!
localhost를 대입하여 Submit
- 127.0.0.1 을 입력하여 Submit을 하면 화면과 같이 127.0.0.1에 대한 ping 결과가 출력된다 !
먼저 Command Injection 공격에 사용되는 내가 알고 있는 다중 명령 특수문자를 이용하여 공격을 시도해보았다!
세미 콜론(;)과 파이프라인(|) 두 개의 사용 방법을 알고 있기에, 두 가지 방법으로 공격을 시도보았다.
세미 콜론(;) 과 파이프라인(|)을 이용한 공격 시도
1. 세미 콜론(;)을 이용한 다중 명령어 실행
- 세미 콜론(;) : 하나의 명령어 라인에서 여러 개의 명령을 실행 가능
- 첫 번째 명령이 실행 실패하더라도, 두 번째 명령이 그대로 실행된다.
- ping 127.0.0.1 명령이 먼저 실행된 후, ls -al 명령어가 실행되어 출력되는 형식이다!
2. 파이프라인을 이용한 다중 명령어 실행
- 파이프라인(|) : 앞의 명령어 출력 결과를 뒤에 실행하는 명령어의 입력 값으로 삽입
- 파이프라인을 사용 시 여러 명령을 동시에 연결하여 사용 가능하다
이 외에 추가로 Command Injection에 사용할 수 있는 다중 명령 특수문자를 찾아서 검색해보고 직접 실습에
사용해보았다!! 추가로 공부하고 사용한 특수문자로 더블 앤드퍼센트(&&), 더블 버티컬 바(||)는 다음과 같다!
3. 더블 앰퍼샌드(&&)
- 더블 앰퍼샌드(&&) : 첫 번째 명령이 에러 없이 정상적으로 종료했을 경우, 두 번째 명령을 실행
- 세미 콜론(;) 과 다르게, 첫 번째 명령이 정상적으로 실행됐을 경우만 뒤의 두 번째 명령 실행한다.
- 입력 값 첫 번째 명령어에 에러가 발생할 수 있는 값을 삽입하여 submit 할 경우, 아무 명령어도 실행되지 않는다 !
4. 더블 버티컬 바(||)
- 더블 버티컬 바(||) : 첫 번째 명령에서 에러가 발생할 경우, 두 번째 명령을 실행
- 첫 번째 명령어에서 에러를 고의적으로 발생시킨 후 || 을 이용하여 ls -al 명령어 실행 가능
'Web > DVWA' 카테고리의 다른 글
[DVWA] File Upload (Low) (0) | 2022.05.19 |
---|---|
[DVWA] File Inclusion (Low) (0) | 2022.05.18 |
[DVWA] CSRF (Low) (0) | 2022.05.18 |
[DVWA] Brute Force (Low) (0) | 2022.05.16 |
[DVWA] DVWA 설치 및 기본 환경 구축 (0) | 2022.05.16 |