분류 전체보기 114

[웹 모의해킹] XSS - Reflected (반사형) 크로스사이트스크립팅 실습

이번 실습에서는 웹 브라우저 주소창을 통해 공격 페이로드를 삽입하고, 해당 값이 서버에서 반영되어 클라이언트에서 실행되는 Reflected XSS (반사형 XSS) 취약점에 대해 학습하였다. DVWA 환경에서 보안 레벨에 따라 어떻게 대응하고 있는지를 확인하고, 각 레벨에서 발생 가능한 공격을 실습하였다. 1. Low Security - 입력값을 필터링 없이 출력 취약 코드 분석header("X-XSS-Protection: 0");if (array_key_exists("name", $_GET) && $_GET['name'] != NULL) { echo 'Hello ' . $_GET['name'] . '';}X-XSS-Protection: 0 => 브라우저의 XSS 필터 비활성화사용자 입력값 $_..

웹 해킹 & 보안 2025.06.08

[웹 모의해킹] XSS - DOM 기반 크로스사이트스크립팅 실습

이번 실습에서는 DOM(Document Object Model)을 조작하는 방식의 XSS 공격, 즉 DOM-Based XSS 취약점을 분석하고 실습하였다. DVWA 환경을 활용해 보안 수준별로 DOM XSS가 어떻게 발생하며, 어떤 식으로 방어하는지까지 확인하였다. 1. Low Security - 필터링 없이 DOM 삽입 공격 URL 예시 http://[DVWA_IP]/DVWA/vulnerabilities/xss_d/?default=http://[DVWA_IP]/DVWA/vulnerabilities/xss_d/?default=위 URL처럼 default 파라미터에 클라이언트 사이드에서 location.hash 등을 통해 직접적으로 DOM 삽입이 이루어지는 경우 여전히 공격이 가능하다. 고급 DOM XSS..

웹 해킹 & 보안 2025.06.08

[웹 모의해킹] Weak Session ID 취약점 실습

이번 실습에서는 웹 애플리케이션에서 흔히 발생할 수 있는 취약한 세션 식별자(Weak Session ID) 생성 방식에 대해 실습을 진행했다. DVWA 환경을 기반으로 보안 레벨에 따른 세션 생성 로직을 분석하였고, 보안적으로 적절하지 않은 구현이 어떻게 공격에 악용될 수 있는지를 확인해 보았다. 1. Low - 단순 증가하는 정수 기반 세션 IDif ($_SERVER['REQUEST_METHOD'] == "POST") { if (!isset ($_SESSION['last_session_id'])) { $_SESSION['last_session_id'] = 0; } $_SESSION['last_session_id']++; $cookie_value = $_SESSION['..

웹 해킹 & 보안 2025.06.08

[웹 모의해킹] Blind SQL Injection 실습 - Low / Medium / High

이번 실습에서는 DVWA의 Blind SQL Injection 취약점을 보안 단계별(Low/Medium/High)로 분석하였다. Blind SQLi는 일반적인 SQLI와 달리 쿼리 결과를 직접 볼 수 없기 때문에, 참/거짓의 응답 차이 또는 시간 지연을 통해 간접적으로 정보를 추론해야 한다. 1. 실습 환경항목정보플랫폼DVWA웹 서버Apache 2.4.62운영 체제DebianDBMSMariaDB (MySQL 5.0.12 Fork)도구브라우저, SQLMap, Vigilance.fr 2. Blind SQL Injection 유형설명Boolean-based참/거짓 조건 비교로 존재 여부 확인Time-basedSLEEP() 함수로 응답 지연을 유도해 조건 판단특징에러나 출력값 없이, 간접적 방식으로 데이터 추..

웹 해킹 & 보안 2025.06.05

[웹 모의해킹] SQL Injection 3 - High 단계 실습

이번 실습은 DVWA 실습 중 High 보안 등급에 해당하는 시나리오이다. Low, Medium 단계와는 다르게 입력값이 POST 방식 + 세션을 통해 관리되며, 단순한 폼 조작만으로는 SQL 인젝션이 어려운 구조이다. 따라서 이번 실습은 자동화 도구 (SQLMap)를 활용한 공격과, 관련 보안 취약점 정보를 Vigilance.fr에서 조회하여 실제 시스템 적용 가능성까지 고려한 시나리오로 진행하였다. 1. 실습 환경 및 준비보안 단계 : DVWA Security Level : High운영체제 : Debian Linux웹 서버 : Apache 2.4.62DBMS : MySQL (MariaDB Fork)사용 도구:웹 브라우저 (세션 확인 및 캡쳐)Burp Suite (쿠키 확인용)SQLMap (자동화 공격..

웹 해킹 & 보안 2025.06.05

[웹 모의해킹] SQL Injection 실습 - 2편 - Medium 단계

이번 실습은 DVWA의 SQL Injection(Medium) 보안 단계에 대한 실습이다. 이전 Low 단계에서는 작은따옴표 ' 등을 직접 삽입하여 손쉽게 인젝션이 가능했지만, Medium 단계에서는 mysqli_real_escape_string() 함수가 적용되어 있어 단순한 인젝션은 필터링된다. 이번 실습에서는 개발자 도구 (F12)와 Burp Suite 그리고 URL 디코딩 도구까지 활용하여 필터링 우회 및 데이터베이스 정보 수집을 진행하였다.1. 실습 환경 DVWA 보안 단계 : Medium사용 도구 :웹 브라우저 (F12 개발자 도구)Burp Suitehttps://www.urldecoder.org/ URL Decode and Encode - OnlineDecode from URL-encoded..

웹 해킹 & 보안 2025.06.05

[웹 모의해킹] SQL Injection 실습 - 1편 - Low 단계

이번 실습은 DVWA의 SQL Injection 취약점을 대상으로 한 공격 시나리오로, 보안 레벨이 Low로 설정된 환경에서 데이터베이스 정보를 추출하고 패스워드를 크랙 하여 인증 우회에 성공하는 과정을 다뤘다. 실습은 단순한 쿼리 조작을 넘어서, 실제 서비스에 치명적인 영향을 줄 수 있는 SQLi 공격의 전 과정을 따라가며 이해하는 것이 목적이었다. 1. SQL Injection이란?SQL Injection은 웹 애플리케이션이 사용자 입력값을 적절히 검증하지 않고 SQL 쿼리에 포함시킬 때 발생하는 취약점이다. 공격자는 이를 통해 쿼리를 조작하거나 우회해 데이터베이스의 민감한 정보를 탈취하거나, 인증을 우회하거나, 시스템을 제어할 수 있다. 2. 실습 환경DVWA 보안 레벨 : Low대상 취약점 페이지..

웹 해킹 & 보안 2025.06.05