전체 글 211

DVWA 애플리케이션으로 웹 취약점 실습하기

1. DVWA란?DVWA(Damn Vulnerable Web Application)는 의도적으로 취약하게 설계된 PHP/MySQL 기반 웹 애플리케이션이다.합법적이고 통제된 환경에서 공격 기법과 도구를 테스트할 수 있도록 만들어졌으며, 보안 교육 플랫폼으로 활용된다.핵심 특징은 다음과 같다.Low / Medium / High / Impossible 4단계 난이도 제공SQL Injection, XSS, CSRF, Command Injection 등 주요 웹 취약점 포함각 레벨의 소스코드를 직접 비교할 수 있는 "View Source / Compare All Levels" 기능2. 환경 구성 docker run -d -p 80:80 vulnerables/web-dvwa *현재 서버에서 80번 포트가 사용중이..

[SQLi] 취약한 웹앱 공격 실습 (2) UNION-based 데이터 탈취

📌실습 목표 : 상품 검색 폼에 UNION SELECT를 삽입해 users 테이블의 계정 정보(username, password)를 검색 결과 화면에 그대로 출력시킨다. 1. 취약한 코드search_vuln.php 의 핵심 부분이다.$keyword = $_GET['keyword'];$query = "SELECT id, name, price, description FROM products WHERE name LIKE '%$keyword%'"; products 테이블에서 4개 컬럼을 SELECT하고 있다.이 구조가 UNION 공격의 핵심 단서다. 2. UNION 공격 원리 3. 단계별 공격 실습 http://192.168.100.25:8080/vuln/search_vuln.php 접속 후 keyword ..

보안이슈#4. Nginx 메모리 취약점

최근 국내 정보보안 전문 매체 보안뉴스와 The Hacker News 는 전 세계 웹 서버 시장의 핵심 소프트웨어인 NGINX에서 복수의 취약점이 공개됐다고 보도했다.이 취약점은 단순한 보안 패치 권고 이상의 의미를 가진다. 전 세계 웹 서버 시장의 핵심 소프트웨어인 NGINX에서 무려 18년간 발견되지 않은 취약점이 공개된 직후, 실제 공격에 악용되기 시작했기 때문이다. F5 내부 연구팀 depthfirst가 발견한 두 취약점은 NGINX Plus와 NGINX Open Source 모두에 영향을 미치며, 조건에 따라 원격 코드 실행(RCE)까지 이어질 수 있다. 특히 CVE-2026-42945는 공개 시점 기준 CVSS 9.2점(Critical)으로 평가됐고, 취약한 코드가 2008년에 처음 도입된 것..

[SQLi] 취약한 웹앱 공격 실습 (1) 로그인 우회

📌실습 목표 : 취약한 로그인 폼에 SQL 페이로드를 삽입해 비밀번호 없이 임의 계정으로 로그인한다.1. 취약한 코드login_vuln.php 의 핵심 부분이다.$username = $_POST['username'];$password = $_POST['password'];$query = "SELECT * FROM users WHERE username = '$username' AND password = '$password'"; 로그인 페이지에서 사용자가 입력하는 값이 쿼리 문자열에 그대로 붙어버린다. 여기서 공격이 시작된다. 2. 공격 원리 3. 페이로드 3종 실습브라우저에서 http://192.168.100.25:8080/vuln/login_vuln.php 로 접속하고 아래 페이로드를 순서대로 입력해..

[SQLi] 취약한 실습용 웹 애플리케이션 만들기 (Claude AI 이용)

SQL 인젝션 실습을 위해 Claude AI를 이용해서 다음과 같이 전체 실습 환경을 구성했다.Windows 10/11 (호스트)└── VMware Workstation └── Rocky Linux 9 (192.168.100.25) └── Docker Engine └── sqli_net (bridge network) ├── sqli_web (PHP 8.2 + Apache 2.4) :8080 └── sqli_db (MySQL 8.0) :3306 내부전용1. 하이퍼바이저 — VMware Workstation보안 실습의 첫 번째 원칙은 격리다.아무리 실습용이라도 취약한 코드를 실서버나 로컬 머신에..

Burp Suite와 FoxyProxy를 활용해서 Request/Response 가로채기

웹 애플리케이션 보안 점검의 가장 기본은 클라이언트와 서버 사이에 오가는 데이터를 확인하고 제어하는 것이다.이를 위해 필수적으로 사용되는 프록시(Proxy)의 개념을 정리하고, 대표적인 도구인 Burp Suite와 FoxyProxy를 이용해 실습 환경을 구축해본다. 1. 프록시(Proxy)란 무엇인가?프록시는 사전적 의미로 '대리' 또는 '대행'을 뜻한다.네트워크 환경에서 프록시 서버는 클라이언트(브라우저)와 서버 사이에서 중계자 역할을 수행한다.보안 점검에서는 이 프록시가 일종의 '검문소'가 된다.클라이언트가 보내는 Request(요청)와 서버가 되돌려주는 Response(응답)를 중간에서 가로채(Intercept), 데이터의 내용을 분석하거나 값을 변조하여 보안 취약점을 테스트할 수 있게 해준다. 2..

서브넷 마스크의 트래픽 관리 및 제어 역할

서브넷 마스크는 트래픽 관리 및 제어의 가장 기초적인 도구다.단순히 네트워크를 나누는 차원이 아니라, 실제 트래픽의 흐름을 물리적·논리적으로 규정할 수 있는 기법이다.서브넷에 대한 개념 설명과 서브넷 마스크 계산법은 아래 포스팅에 자세히 정리되어 있다.https://nanujahope.tistory.com/118 이번에는 서브넷 마스크가 어떻게 트래픽을 제어하는지 3가지 포인트로 알아본다.1. 로컬(Local)과 리모트(Remote)의 판별 기준컴퓨터가 데이터를 보낼 때, 목적지가 "우리 동네(Local)"인지 "옆 동네(Remote)"인지 판단하는 유일한 기준이 바로 서브넷 마스크다.동작 원리: 출발지 IP와 목적지 IP를 각각 자신의 서브넷 마스크와 AND 연산한다.결과:값이 같으면 로컬 트래픽: 게..

VMware Workstation에서 가상 네트워크 설정하기

1. 가상 네트워크를 구성하는 두 가지 요소 VMware Workstation은 VM을 생성할 때 물리 장비 없이 소프트웨어만으로 네트워크 환경을 만들어낸다. 이 가상 네트워크는 두 가지 핵심 구성요소로 이루어진다.1️⃣ 가상 스위치 (VMnet) 역할: 공유기 / 네트워크 스위치 VMware가 호스트 OS의 커널 안에 만든 소프트웨어 스위치다. VM들과 호스트 PC가 연결되는 네트워크 자체를 의미하며, 패킷을 실제로 전달하고 라우팅하는 역할을 한다. VMnet0, VMnet1, VMnet8 등이 각각 하나의 가상 스위치에 해당한다. 2️⃣ 가상 어댑터 (Virtual NIC) 역할:랜카드 (NIC) 가상 스위치에 연결하기 위한 소프트웨어 NIC(랜카드)다.호스트 PC 쪽에는 VMware가 자동으..

파이썬으로 소켓 통신 연결 구현하기

네트워크 프로그래밍이란 결국 프로세스 간의 통신을 의미하며, 이를 가능하게 하는 핵심 도구가 바로 소켓(Socket)이다.파이썬 socket 모듈을 활용하면 리눅스 환경에서 서버와 클라이언트를 직접 구현하고 데이터를 주고받는 과정을 명확히 이해할 수 있다. 1. 소켓 통신의 기본 개념소켓은 네트워크상의 두 프로그램이 서로 데이터를 주고받을 수 있도록 연결해 주는 통신 종착점(Endpoint)을 의미한다.서버와 클라이언트는 각각 역할에 맞는 소켓을 생성하여 통신에 참여한다.🟢 서버와 클라이언트의 역할서버(Server): 클라이언트의 연결 요청을 기다리다가 요청이 오면 수락하여 통신용 소켓을 생성한다. 연결을 기다리는 소켓을 리스닝 소켓, 연결된 클라이언트와 통신하는 소켓을 커넥션 소켓이라고 한다.클라이언..