웹 해킹이란 무엇인가?
웹 서비스 상에서 발생될 수 있는 모든 보안 허점을 이용해 악의적인 행위를 하는 것
= 웹 어플리케이션 해킹
웹 어플리케이션이란?
= 웹 프로그래밍 언어(JSP, PHP, ASP 등)로 작성된 프로그램, 어플리케이션
= 웹 브라우저를 통해서 방문하는 웹 사이트
해커들의 타겟, 웹 서비스
방화벽 도입 후 웹 해킹 빈도가 높아졌다.
방화벽은 IP와 Port를 기반으로 패킷을 필터링 한다.
→ OSI 7계층의 3,4계층
웹 서비스(대외 서비스) : HTTP(80), HTTPS(443)
그 외 서비스: SSH(22), Telnet(23), FTP(21) 등
웹 서비스를 제외한 나머지 서비스는 굳이 필요하지 않으므로 방화벽에서 차단한다.
그러므로 웹 서비스에 대한 공격이 들어올 수 밖에 없고, 그에 대한 연구가 진행될 수 밖에 없다.
→ 웹 해킹
웹 해킹을 통한 피해 영역
클라이언트 영역 → XSS
1차 침투(대외 서비스) → 웹 해킹, 데이터베이스 열람 및 개인정보 탈취
2차 침투(대내 서비스) → 터널링을 통한 침투, 대내 서비스 웹 해킹(기업 내 중요정보, 대외비 정보, 직원 정보 등)
3차 침투(오피스 망) → 개인 PC에 랜섬웨어, 악성코드 감염
웹 해킹이 발생하는 원인
입력 값 검증 부재 → Injection, XSS
취약한 인증 및 접근 통제 → 비인가자에 의한 관리자 페이지 접근
중요정보 노출 → 웹 프록시 도구를 통한 중요정보 노출, 웹 서버 자체의 과도한 에러 메시지
부적절한 설정 → 세션 타임아웃
서버/프레임워크 취약점 → WAS(IIS, WebLogic, JEUS)취약점, Apache Struts 취약점, WEB-INF
설계 오류 → 설계 자체 오류에 의한 취약점
웹 해킹 필수 도구, 웹 프록시
프록시란 무엇인가?
- 클라이언트와 서버의 통신 구간 중간에 위치하여 중계자 역할을 한다.
- 대리로 통신을 수행하는 기능을 가진다.
클라이언트(요청) - 서버(응답) 직접 통신하는 경우도 있지만, 중간에 프록시를 거쳐서 통신하는 경우도 있다.
프록시 종류
- Forward, Reverse, Open
웹 프록시 구조
웹 프록시란?
- 웹 통신을 할때 사용되는 프록시
웹 프록시를 통한 통신 순서
1. 브라우저에서 프록시 설정을 통해 웹 프록시로 요청을 보낸다.
2. 웹 프록시가 요청 메시지를 받은 후 서버로 전달한다.
3. 서버의 응답을 웹 프록시가 받은 후 브라우저로 전달한다.
웹 해킹 시 웹 브라우저에서 전달되는 요청 메시지의 특정값을 변조하거나, 서버에서 전달되는 응답 메시지를 변조한다.
- 웹 프록시 도구를 통해 클라이언트의 요청 메시지를 수정한다. (파라미터, 쿠키)
- 웹 프록시 도구를 통해 서버의 응답 메시지를 수정한다. (바디 값)
웹 프록시 종류
버프 스위트(Burp Suite): 가장 많이 사용되는 웹 프록시로 다양한 확장 기능을 사용할 수 있다.
파로스(Paros): 간단한 인터페이스로 입문자 용으로 적합하다.
피들러(Fiddler): 개발자들이 많이 사용하고 있다.
ZAP: OWASP 프로젝트에서 제공되는 웹 프록시로 점차 사용자가 늘고 있다.
웹 브라우저를 믿지 말라. 오직 웹 프록시 요청에 의한 응답만을 믿어라.
→ 웹 브라우저는 디테일한 보안 테스팅이 어렵다.
→ 웹 프록시 도구를 활용하여 상세 분석
참고
'웹 해킹 > 웹 해킹 및 시큐어 코딩 기초' 카테고리의 다른 글
OS Command Injection (2) | 2025.01.03 |
---|---|
SQL Injection 대응 방안 (1) | 2024.12.27 |
SQL Injection (1) | 2024.12.11 |
버프 스위트(Burp Suite) 설치 및 사용법 (0) | 2024.11.26 |
취약 환경 구축 (0) | 2024.11.22 |