1. 문제
- 비밀번호를 localhost 31000 ~ 32000 사이 포트 중 하나에 제출하여 검색할 수 있다고 한다.
2. Port scanner on Wikipedia
2.1 주요 개념
- 포트 스캔
- 호스트의 여러 포트에 클라이언트 요청을 전송하여 활성화된 포트를 찾는 과정이다.
- 보안 진단 및 네트워크 서비스 점검을 위해 사용되며, 악의적인 목적으로도 사용될 수 있다.
- 포트 스위핑(Port Sweeping)
- 여러 호스트를 대상으로 특정 포트가 열려 있는지 확인하는 스캔이다.
- 예: SQL 서비스가 활성화된 호스트를 탐색하기 위해 TCP 포트 1433을 검사.
- 포트 상태
- Open(열림): 해당 포트에서 서비스가 실행 중임.
- Closed(닫힘): 포트는 응답하지만, 서비스가 실행되지 않음.
- Filtered(필터링됨): 포트가 응답하지 않거나 방화벽 등으로 차단됨.
2.2 스캔 유형
- TCP 스캔
- TCP 3-way handshake를 사용하여 포트 상태를 확인한다.
- OS 네트워크 함수(connect())를 호출해 연결을 시도하며, 연결 후 즉시 종료해 서비스에 과부하를 주지 않는다.
- "소음이 많은" 방식으로 IDS(침입 탐지 시스템)에서 쉽게 탐지 가능하다.
- SYN 스캔 (하프 오픈 스캔)
- 완전한 TCP 연결 없이 SYN 패킷을 전송하여 응답을 분석한다.
- SYN-ACK를 받으면 포트가 열려 있음, RST를 받으면 닫혀 있음.
- 방화벽을 우회하거나 IDS 탐지를 피하기 위해 자주 사용된다.
- UDP 스캔
- UDP는 연결 기반 프로토콜이 아니기 때문에 TCP 스캔과는 다르다.
- 닫힌 포트에 UDP 패킷을 전송하면 ICMP Port Unreachable 메시지가 반환된다.
- 응답이 없으면 포트가 열려 있다고 간주하지만, 방화벽에 의해 잘못된 결과가 나올 수 있다.
- ACK 스캔
- 포트가 "필터링"되었는지 또는 "필터링되지 않았는지"를 확인한다.
- 주로 방화벽의 규칙을 분석하거나 상태 기반 방화벽(Stateful Firewall)을 조사할 때 사용된다.
- FIN 스캔
- FIN 패킷을 보내 응답을 확인한다. 닫힌 포트는 RST 패킷으로 응답하지만, 열린 포트는 응답하지 않는다.
- SYN 패킷을 차단하는 방화벽을 우회하는 데 유용하다.
- 기타 스캔
- X-mas 스캔: FIN, URG, PUSH 플래그를 설정한 패킷 전송.
- Null 스캔: 모든 플래그를 비활성화한 패킷 전송.
- Idle 스캔: 자신의 IP를 숨기고 다른 호스트의 IP를 사용하는 방식.
- ICMP 스캔: 핑과 같은 ICMP 요청을 통해 호스트를 확인.
2.3 포트 필터링과 ISP 정책
- 많은 인터넷 서비스 제공업체(ISP)는 외부 네트워크로의 포트 스캔을 제한한다.
- 패킷 필터링 또는 투명 프록시를 통해 특정 포트로의 요청을 차단하거나 수정할 수 있다.
- 일부 ISP는 약관에서 포트 스캔을 금지하고 있으며, 이를 위반하면 서비스 중단 조치를 받을 수 있다.
3. 풀이
- nmap 명령으로 31000 ~ 32000 사이의 포트에서 어떤 포트가 열린지 점검해보자
nmap -p 31000-32000 localhost
- 한개 씩 다 날려보다가 31790 포트에서 RSA KEY를 보냄
echo "kSkvUpMQ7lBYyCM4GBPvCvT1BfWRy0Dx" | openssl s_client -connect localhost:31790 -ign_eof
- /tmp/ 디렉터리 아래에 RSA 파일 만들고 rsa키를 저장.
- chmod 600으로 접근 권한을 설정하고
- ssh 명령어로 접속
- bandit17 유저로 접속 성공
- passwd를 읽어 오자.
'Wargame > bandit wargame' 카테고리의 다른 글
Bandit Level 17 → 18 (0) | 2025.01.06 |
---|---|
17 → 19 까지 필요한 명령어 (0) | 2025.01.06 |
Bandit Level 15 → 16 (0) | 2025.01.06 |
Bandit Level 14 → 15 (0) | 2025.01.06 |
Bandit Level 13 → 14 (0) | 2025.01.06 |