[실습3-1] OS Command Injection 공격 실습
admin 계정으로 로그인하고 나서 ping check을 들어간다. 192.168.0.1을 입력해본다. 방화벽 IP 주소다. 그냥 결과값을 몽땅 출력시키는 케이스이다.
192.168.0.1&echo "test"
이번엔 이걸 쳐보자. 뒤에 echo 붙이기
밑에 "test"가 나온 것을 알 수 있다. command injection이 된다고 판단할 수 있다.
이번엔
192.168.0.1&ipconfig
이런 식으로 나왔다. ipconfig으로 했을 때 나오는 걸 보니 윈도우 기반이라는 것을 알 수 있다. 만약 리눅스 기반이었다면 ifconfig라고 치면 나올 것이다.
윈도우 기반에서 네트워크 정보를 알아낼 수 있는 ipconfig.
다음으로는 버전 정보를 찾아보자.
192.168.0.1&ver
이렇게 밑에 버전 정보가 나온다.
다음으로
192.168.0.1&whoami
해당 프로그램을 실행한 사용자 정보를 확인할 수 있다.
system 권한이다. 윈도우 최고 권한이라는 것을 알 수 있다.
패스워드 획득도 가능하고 여러가지 공격 방향을 정할 수 있다. 원격 데스크톱 공격도 가능하다.
192.168.0.1|whoami
이렇게 쳐보자.
앞에 있던 구문들은 다 없어지고 뒤의 whoami 명령어만 작동된 걸 볼 수 있다.
이렇게 문자 &, |의 차이가 나타난다.
리눅스 기반으로는 cat으로 패스워드 열람, 소스코드 열람도 가능하다.
윈도우로도 해보자.
192.168.0.1|dir
디렉터리 정보가 나온다. 이 중에서 파일을 열람해보자.
예시로 common.php 파일을 열어보자.
192.168.0.1|type common.php
이렇게 소스코드가 출력된다. 다양한 소스코드 열람이 충분히 가능하다는 의미이다.
[실습3-2] OS Command Injection 공격을 통한 Reverse-Shell 실습
Bind Shell
정방향 연결. client에서 연결 요청을 하고 server가 응답하는 방식.
Reverse Shell
client가 요청하는 게 아니라 server가 요청을 해서 client가 응답을 하며 연결되는 방식.
방화벽이 있는 환경에서 자주 사용된다. 웹 포트만 연결될 수 있어서 비교적 느슨한 out bound 정책으로 연결을 맺게 된다. 연결을 맺고 나면 그때부터 시스템 명령을 요청할 수 있다.
netcat
네트워크 상에서 파일을 전송하는 등 유용한 해킹도구이다. 평문 전송을 한다.
ncat: 암호화 통신을 제공한다.
netcat을 다운로드 받아야 하는데 현재 바이러스가 걸려져 있어 다운로드가 안된다고 한다... 그래서 나중에 실습을 하고 나서 다시 글을 수정하겠다.
'웹 해킹 & 시큐어 코딩' 카테고리의 다른 글
웹 해킹 & 시큐어 코딩 (15) (0) | 2025.01.23 |
---|---|
웹 해킹 & 시큐어 코딩 (14) (0) | 2025.01.21 |
웹 해킹 & 시큐어 코딩 (12) (0) | 2025.01.20 |
웹 해킹 & 시큐어 코딩 (11) (0) | 2025.01.20 |
웹 해킹 & 시큐어 코딩 (10) (0) | 2025.01.18 |