[사용자 브라우저]
|
| HTTP/HTTPS 요청
v
[웹 서버] ---------------------------+
| |
| CGI 스크립트 호출 |
v |
[CGIIRC 프로그램] |
| (TCP 연결) |
|-------------------------> [IRC 서버]
| <------------------------- |
|
| HTTP/HTTPS 응답 (HTML/JS)
v
[사용자 브라우저]
사용자 브라우저
웹 서버
CGIIRC 프로그램
NICK, JOIN, PRIVMSG)IRC 서버
브라우저 화면 업데이트
| 구간 | 위험/취약점 | 체크 포인트 |
|---|---|---|
| 브라우저 → 웹 서버 | 입력값 검증 미흡 | IRC 서버 주소, 채널명, 닉네임 필터링 여부 |
| 웹 서버 | CGI 권한/설정 문제 | CGI 스크립트 실행 권한 최소화, 디렉터리 리스팅 방지 |
| CGIIRC 프로그램 | 명령어 주입 | IRC 명령어, 쉘 호출, 파일 경로 조작 취약 여부 |
| CGIIRC 프로그램 | 세션 관리 | 세션 하이재킹, XSS, CSRF 여부 |
| CGIIRC → IRC 서버 | IRC 프로토콜 처리 | 서버 인증, 메시지 포맷 검증, IRC 서버 오용 방지 |
| IRC 서버 | 서비스 거부 공격 | Flooding, Ping-Pong 공격 대응 |
즉, CGIIRC는 웹 기반 IRC 프록시 역할을 하면서, 브라우저 → 웹 서버 → CGI → IRC 서버 → 브라우저로 메시지를 중계합니다.
펜테스터 관점에서는 입력값 검증, 명령어 주입, 세션/권한 관리가 핵심 공격 포인트가 됩니다.