Journey to Security/취약점진단|모의해킹 17

[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 ..

[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보안 실습의 첫 번째 원칙은 격리다.아무리 실습용이라도 취약한 코드를 실서버나 로컬 머신에..

PwnKit(CVE-2021-4034)을 이용한 리눅스 로컬 권한 상승과 대응

리눅스 시스템의 권한 관리 프레임워크인 Polkit(PolicyKit)에서 발견된 CVE-2021-4034(PwnKit) 취약점에 대해서 알아본다.이 취약점은 pkexec 유틸리티가 인자값(argv)을 처리하는 과정에서 발생하는 메모리 참조 오류를 악용하여, 일반 사용자 계정에서 root 권한을 획득하는 로컬 권한 상승(LPE) 공격이다. 1. 전체 공격 아키텍처 및 흐름공격자는 낮은 권한의 계정으로 시스템에 접근한 뒤, pkexec의 SUID 특성과 환경 변수 조작을 결합하여 root 권한을 탈취한다. ✅ pkexec이란? pkexec은 리눅스 시스템에서 Polkit(PolicyKit)이라는 프레임워크를 기반으로, 일반 사용자가 다른 사용자(보통 root)의 권한으로 특정 명령을 실행할 수 있게 해주는..

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

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

[서버 보안] 리눅스 SSH 백도어 점검 및 삭제하기

리눅스 서버 침해 사고가 발생했을 때, 공격자가 가장 먼저 수행하는 작업 중 하나는 지속성 확보이다.관리자가 비밀번호를 바꿔도 언제든 재접속할 수 있도록 authorized_keys 파일에 자신의 공개키를 슬쩍 끼워넣는 방식이다.보안 관리자는 root 권한을 이용해 서버 내 모든 사용자의 SSH 키 상태를 주기적으로 모니터링하고, 인가되지 않은 키를 식별하여 제거해야 한다.https://m.boannews.com/html/detail.html?idx=126315 리눅스에 백도어 계정 설치하는 사이버 공격 발견... 다양한 악성코드 추가 설치리눅스 SSH 허니팟을 활용해 불특정 다수의 리눅스 시스템을 대상으로 한 공격이 발견됐다. 공격자는 기본 설정이나 단순한 형태의 비밀번호를 사용하는 등 부적절하게 관리..

[서버 보안] Brute Force 공격과 무단 공개키 삽입(SSH 백도어)

서버 보안에서 가장 빈번하게 발생하는 위협 중 하나는 SSH를 통한 무차별 대입 공격(Brute Force Attack)이다.칼리 리눅스의 Hydra를 이용한 실습을 통해 공격자가 무차별 대입 공격으로 서버에 침입하는 루트를 확인하고, 이와 같은 공격을 방지하고 또 대응하기 위한 방법에 대해 알아보자.1. Brute Force Attack이란?Brute Force Attack(무차별 대입 공격)이란 공격자가 사용자 ID와 비밀번호의 가능한 모든 조합을 반복적으로 대입하여 올바른 계정 정보를 찾아내는 공격 방식이다.단순한 방법이지만 비밀번호가 짧거나 유추하기 쉬운 경우 성공 확률이 매우 높은 강력한 공격이다.서버 관리자가 초기 설정 시 단순한 비밀번호를 사용하거나, 습관적으로 동일한 비밀번호를 여러 계정에..