정보보안/웹 보안 13

DVWA로 배우는 CSRF 공격

CSRF(Cross-Site Request Forgery)란?공격자가 사용자의 인증된 세션을 이용하여 의도하지 않은 요청을 서버로 보내는 공격입니다. 예를 들어, 사용자가 로그인된 상태에서 공격자가 사용자의 세션을 탈취하여,악성 요청이 자동으로 전송되도록 유도하고 원하지 않는 행동(예: 비밀번호 변경, 송금 요청 등)을 수행하게 만듭니다. CSRF 동작원리 정상 접속 및 로그인사용자가 정상적으로 웹사이트(example.com)에 로그인합니다.브라우저는 로그인 상태를 유지하기 위해 세션 쿠키를 저장합니다.피싱(공격자가 악성 링크 또는 이메일 전송)공격자는 사용자가 클릭하도록 악성 링크를 포함한 이메일 또는 웹사이트를 만듭니다.예: "보안 문제 해결을 위해 클릭하세요!"라는 메시지로 유도패스워드 변경 요청 ..

DVWA로 배우는 File Inclusion

1. File Inclusion 취약점이란?웹 애플리케이션이 파일을 동적으로 포함할 때, 사용자가 직접 입력한 값이 포함될 경우 악의적인 파일을 불러오거나 실행할 수 있는 취약점을 의미합니다. 여기서 동적이라는 의미는 사용자의 입력이나 변수 값에 따라 다른 파일을 불러와 실행하는 것을 의미합니다.즉, 정해진 파일이 아니라, 사용자의 요청이나 특정 조건에 따라 불러오는 파일이 달라지는 방식입니다. 공격자는 해당 취약점을 통해, 3가지의 악의적인 행위를 수행할 수 있습니다. 1. 악성 스크립트 포함시켜 서버내에서 악성 코드를 실행 2. 서버내에 중요한 파일(/etc/passwd) 유출3. 웹 업로드  2. File Inclusion 유형File Inclusion 취약점은 로컬 파일 포함(Local File ..

[프로젝트] 모의해킹 시나리오(파일업로드 + CAPTCHA)

취약한 웹사이트(DVWA)에서 파일 업로드 및 CAPTCHA 우회 취약점을 이용해 관리자 계정을 탈취하는 실습 시나리오 구성하는 실습을 진행해보겠습니다. 개요기간: 2025.01.20 ~ 2025.02.02 (2주)환경: DVWA, PHP, Kali Linux, Burp Suite목표: 취약한 웹사이트(DVWA)에서 파일 업로드 및 CAPTCHA 우회 취약점을 이용해 관리자 계정을 탈취 공격 시나리오공격자는 파일 업로드 취약점을 이용하여 웹셸, CAPTCHA를 우회하는 패스워드 변경 페이로드, 세션을 탈취하는 php파일 업로드관리자에게 악성 이메일을 전송하여 Reflected XSS 공격 수행악성 스크립트를 실행하여 관리자 패스워드 변경 및 로그아웃 유도 공격자는 파일 업로드 취약점을 이용해 웹셸, 세션..

Insecure CAPTCHA을 알아보자

Insecure CAPTCHA이란CAPTCHA는 사람과 컴퓨터를 구분하기 위해 사용하는 보안기술로 웹사이트에서 자동화된 봇의 무차별 공격을 방지하기 위해 사용됩니다. 공격자는 CAPTCHA에 존재하는 취약점을 활용하여 CAPTCHA를 우회하거나 무효화할 수 있습니다. 이는 웹 애플리케이션의 보안을 심각하게 손상시킬 수 있으며, 무차별 대입 공격이나 계정 탈취 시도에 취약해질 수 있습니다. (참고) 요즘은 CAPTCHA보다는 cloudflare turnstile을 많이 활용하는 것 같습니다. DVWA 실습으로 알아보기참고로 해당 실습을 수행하기 위해서는 DVWA CAPTCHA 설정이 필요합니다.  CAPTCHA가 적용된 페이지가 어떻게 동작하는지 확인해 보겠습니다.패스워드 변경을 하는 페이지로 보이며, 변..

File Upload 취약점을 알아보자

File Upload 취약점이란파일을 업로드할 때, 파일에 대한 충분한 검증을 하지 않아서 발생하는 보안 취약점입니다. 예를 들어 서버가 특정 파일 유형(예:. php,. jsp 등)을 실행할 수 있도록 허용할 경우, 공격자는 서버 측 코드 파일을 업로드하여 웹 셸을 실행할 수 있습니다. 이는 공격자가 서버를 완전히 제어할 수 있게 만듭니다 DVWA 실습으로 알아보기File Upload 취약점은 주로 웹셸을 업로드하여 서버에 접근하고 권한을 획득하는 공격과 같이 사용됩니다.아래 2023년 8월에 발생한 파일업로드 공격사례에서도 파일업로드 취약점을 이용해 웹셸을 업로드하는 것을 볼 수 있었습니다. DVWA활용하여, 실제 공격 방식과 유사하도록 파일 업로드 취약점을 활용해 웹셸 업로드를 하는 실습을 진행해 ..

웹셸(WebShell)

1. 웹셸이란웹 셸(Web Shell)은 웹 서버에 업로드되어 파일탐색이나 시스템 쉘 명령어를 실행할 수 있는 파일입니다. 본래는 서버 관리 등의 목적으로 생겨났지만, 악의적인 해커들이 웹셸을 업로드하여 서버에 침투해 악성 활동에 활용하면서 보안 위협으로 간주되고 있습니다.  악의적인 해커들은 특정 서버의 존재하는 취약점을 파악하여 웹셸을 서버에 업로드합니다. 이를 통해 공격자는 명령 실행, 파일 업로드 및 다운로드, 데이터 유출 등의 작업을 수행할 수 있습니다. 공격자가 취약한 파일 업로드 기능이 있는 웹 애플리케이션을 발견하는 과정을 정리해 보겠습니다.공격자는 먼저 웹 서버의 취약점을 스캔하여 파일 업로드 기능을 발견합니다.파일 확장자 검증이 미흡한 것을 확인한 후, .php 확장자를 가진 웹셸 파일..

대표적인 웹 취약점- 3

저번 과제와 마찬가지로 대표적인 웹 취약점 4가지를 정리하였다. 파일 다운로드 취약점과 파일 업로드 취약점은 점검 및 조치하기위해 기술적인 부분이 요구되어 중요도가 높은편이고, 소스코드 내 주요 정보 취약점과 공개용 웹 게시판 취약점은 관리적인 부분이 요구되어 중요도가 낮은 편이다.  대표적인 웹 취약점- 2저번 과제와 마찬가지로 대표적인 웹 취약점 4가지를 정리하였다.https://rybbit-life-debugging.tistory.com/50?category=1199096 대표적인 웹 취약점 - 1국내에서 자주 발생하는 웹 취약점 4가지를 정리하였다.rybbit-life-debugging.tistory.com 1. 파일 다운로드 취약점URL에 경로조작(Path Traversal)관련 문자를 입력하여..

[웹 취약점 실습] 정보공개 취약점(Information disclosure) - 1

정보공개취약점이란웹사이트가 의도치 않게 사용자에게 민감한 정보를 노출하는 취약점이다. 공격자들은 이를 통해 민감한 정보(계정정보, 금융정보, 개인정보 등) 얻거나, 에러발생 시 노출되는 정보(애플리케이션 정보, DB정보, 웹서버구성정보, 개발 관련 주석 등)를 통해 추가적인 공격을 시도할 위협이 존재한다. 실습하기해당 실습은 에러발생 시 취약한 버전의 서드파티 프레임워크가 노출되는 것을 확인하는 실습이다. ACCESS THE LAB 버튼을 클릭하여 실습사이트로 이동할수있다.실습사이트 접속 시 해당 페이지를 확인할 수 있다. 버프스위트의 프록시 기능을 통해 해당 페이지의 요청 및 응답값을 확인할 것이다. Open browser클릭하여 실습사이트에 접속하고 intercept off 기능을 눌러 요청 및 응답..

대표적인 웹 취약점- 2

저번 과제와 마찬가지로 대표적인 웹 취약점 4가지를 정리하였다. 대표적인 웹 취약점 - 1국내에서 자주 발생하는 웹 취약점 4가지를 정리하였다. 참고로 웹취약점의 범위와 용어는 KISA의 표준 문서를 기반으로 자신의 회사에 맞게 정의하기 때문에 대표적인 SQLI, XSS와 같은 취약점 이rybbit-life-debugging.tistory.com 1. 취약한 파일 존재 취약점웹루트 하위에 존재하는 취약한 파일(문서파일, 백업파일, 로그파일, 압축파일등)이 외부에 노출되어 발생할 수 있는 취약점 악의적인 사용자는 파일명을 유추하여 민감한 정보가 포함된 내부문서, 백업파일, 압축파일등에 접근하고 이를 통해 시스템에 접근하거나 민감한 정보를 탈취할 위협이 있다. 해당 취약점은 진단하는 범위가 모호하다. 예를 ..

대표적인 웹 취약점 - 1

국내에서 자주 발생하는 웹 취약점 4가지를 정리하였다. *웹취약점의 범위와 용어는 KISA의 표준 문서를 기반으로 자신의 회사에 맞게 정의하기 때문에 대표적인 SQLI, XSS와 같은 취약점 이외에도 추가적으로 정의하는 취약점이 존재할 수 있다. 1. 관리자 페이지 노출 취약점(Administration page exposure)정의관리자만 접근이 가능해야 하는 관리자 페이지가 일반 사용자에게 노출되어 발생하는 취약점 관리자페이지의 URL이 추측가능한 형태(/admin, /manager 등)로 구성되어 있을 때 주로 발생하며, 공격자는 관리자 로그인 페이지로 이동하여 무차별 대입공격 또는 딕셔너리 공격을 통해 관리자 권한 획득을 시도한다. 해당 관리자 권한을 통해 중요한 데이터를 조작 및 유출할 위협이 ..