GitHub - lwzSoviet/CVE-2021-3281 GitHub - lwzSoviet/CVE-2021-3281 Contribute to lwzSoviet/CVE-2021-3281 development by creating an account on GitHub. github.com django.utils.archive.py의 TarArchive 클래스, 171번 라인에서 발생하는 Path Traversal 취약성이다. 이 함수는 os.path.join(to_path, name)를 사용하며, 'name' 파라미터에 대한 검증을 실시하지 않는다. 사용자가 이 함수를 윈도우 환경에서 사용할 경우 Directory Traversal 취약성이 발생할 수 있다. POC는 아래와 같다. from django.u..
대부분의 Amazon EC2 작업에서는 리소스 수준의 권한이나 조건을 지원하지 않으며, AWS 리전 이외의 기준으로 EC2 인스턴스에 대한 IAM 사용자 또는 사용자 그룹의 액세스를 격리하는 방법은 대부분의 사용 사례에 적합하지 않다. IAM Policy 선언 https://aws.amazon.com/ko/premiumsupport/knowledge-center/restrict-ec2-iam/ 조건(Condition) AWS 계정 관리자 그룹 내에 있는 IAM 사용자는 모든 EC2에 접근 가능해야한다. 계정 내에 여러 EC2가 동작 중일 때 한 IAM 사용자를 대상으로 특정 EC2만 사용이 가능해야 한다. 설계 리전으로 제한한다. - 하지만 동일 리전 내에 동작중인 EC2 인스턴스가 다수 있다. 태그로 ..
데이터 평문 전송 데이터 평문 전송 취약점은 서버와 클라이언트 간 통신 시 중요 정보(계정정보, 주민등록번호, 신용정보 등)가 평문으로 노출되는 취약점입니다. 주의! 데이터 평문 전송 취약점을 애플리케이션 계층 진단 도구인 프록시로 진단하지 않도록 한다. 복호화가 완료된 이후의 데이터가 보이기 때문에 꼭 전송 계층의 진단 도구인 스니핑 툴(와이어 샤크)로 진단한다. No 실습 위치 비고 1 http://localhost/login 로그인 Step1. 로그인 시 발생하는 패킷을 Wireshark로 확인해보면 입력한 계정정보가 평문으로 전송되는 것을 확인할 수 있습니다. 데이터를 평문으로 전송했을 시 스니핑 공격시 계정 노출의 위험이 있으므로 암호화하여 전송해야 합니다. 또한 개인정보보호법과 정보통신망 이용..
정보누출 정보 누출 취약점은 웹 애플리케이션에 데이터가 노출되는 것으로 개발 과정의 주석이나 오류 메시지 등에서 중요한 정보가 노출되어 2차 공격을 하기 위한 정보를 제공하는 취약점 또는 법적 근거에 의해 패치되어야 하는 취약점입니다. 개인 정보 노출, 에러 정보 노출, 서버 절대경로 노출, 관리자 페이지 노출 등이 정보 노출에 해당됩니다. No 실습 위치 비고 1 http://localhost/phpmyadmin php 관리자 페이지 2 http://localhost/home.php 메인 페이지 Case1. php 관리자 페이지 노출 Step1. 기본 관리자 페이지 문자열(phpMyAdmin, mydbadmin 등)을 시도하여 도메인에 접속합니다. Case2. 메인페이지 파일 확장자 노출 Step1. ..
Install Angular npm이 설치되어 있어야 한다. npm install -g @angular/cli ng new [프로젝트 명] 단일 페이지 웹 호스팅 제작을 목적으로 하는 경우 Would you like to add Angular routing 질문 No 어떤 스타일 시트 사용할 것인지 선택 프로젝트를 생성한 경로로 이동한 후 ng serve 명령어를 통해 서버를 시작할 수 있다. 서버 시작 후 localhost:4200 주소로 접근하면 확인할 수 있다. 서비스 추가 https://angular.io/cli/generate#service-command Angular angular.io angular에서 서비스는 코드의 재사용성을 높이고, 모듈 간 결합도를 낮춰준다.
불충분한 인가 중요 기능 또는 데이터에 접근 시 사용자 권한에 따른 접근 통제를 두지 않은 취약점입니다. 접근 권한에 대한 인증 프로세스 및 올바른 접근 통제 로직이 구현되지 않아 다른 사용자의 민감한 정보나 인가되지 않은 페이지에 접근할 수 있습니다. 1. 공격 실습 No. 실습 위치 비고 1 http://localhost/freeboard/index 게시판 목록 기능 2. 게시판 php 코드 My Website Home Profile Logout 자유게시판 버그및건의 자유게시판
불충분한 인증 불충분한 인가 취약점은 중요 정보를 다루는 페이지에 대한 인증 절차가 미흡할 경우 발생하는 취약점입니다. 인증 기능(로그인, 중요 페이지에 대한 추가 인증)은 구형하였으나 추측 가능한 패스워드, 취약한 인증 프로세스로 구현되어 우회하거나 무력화하여 접근할 수 있습니다. 1. 공격 실습 No. 실습 위치 비고 1 http://localhost/profile_update 회원정보 수정 기능 2. php 코드 My Website Home Profile Logout 자유게시판 버그및건의 내 정보
자동화공격 자동화 공격이란 웹 애플리케이션의 정해진 프로세스에 자동화된 공격을 수행함으로써 자동으로 수많은 프로세스가 진행되는 취약점입니다. 이는 DoS(Denial of Service), 무차별 대입 기법(Brute-Forcing), 데이터베이스 과부하와 같은 피해를 일으킬 수 있습니다. 1. 공격 원리 자동화 공격은 다량의 요청이 시도될 때 검증과 적절한 대안 방안을 구축하지 않았기 때문에 발생하는 취약점입니다. 자동화 공격을 방지하기 위해서는 데이터 등록 시 일회성이 될 수 있는 별도의 토큰 사용, captcha 사용, IDS/IPS에서의 탐지 규칙 추가 등이 있습니다. 2. php 코드 Login Login Register 계정정보를 입력해주세요 3. 공격 실습 No. 실습 위치 비고 1 http..
CSRF CSRF 취약점은 정상적인 요청과 조작된 요청을 서버가 구분하지 못할 경우 발생하는 취약점으로, 애플리케이션을 이용하는 사용자에게 조작된 요청을 웹 애플리케이션에 전송하도록 유도하여 피해를 발생시키는 취약점입니다. 공격당한 사용자의 권한을 그대로 사용하므로 사용자의 권한 수준에 따라 그 피해 범위가 달라질 수 있으며, XSS 취약점과 무관하게 공격이 가능하나 XSS 취약점과 연계 시 공격 범위가 증가합니다. 1. 공격 원리 CSRF는 사용자의 요청을 서버가 적절한 검증 절차 없이 처리하여 해당 사용자의 권한으로 임의의 동작을 그대로 실행시켜 발생합니다. 공격자는 조작된 요청을 하게 하는 스크립트를 삽입한 게시물을 업로드합니다. 이 게시물에 접근한 사용자는 공격자의 패킷을 응답 받게 되며 실행하게..
파일다운로드 취약점은 공격자가 파일 다운로드 기능을 이용하여 웹 사이트에 포함된 주요 파일을 다운로드 할 수 있는 취약점입니다. 이는 파일을 다운받는 기능이 포함된 페이지에서 입력되는 경로를 검증하지 않는 경우 임의의 문자나 주요 파일 명을 입력하여 웹 서버의 홈 디렉터리를 벗어나 임의의 위치에 있는 파일을 열람하거나 다운받을 수 있습니다. 1. 공격 원리 파일 다운로드 취약점은 다음의 경우에 발생합니다. No. 원인 상세 1 파일 경로와 파일명 노출 파일 다운로드 시 해당 파일의 상대경로 또는 절대경로를 사용하는 경우 다운로드 모듈이 파일의 경로나 이름을 파라미터로 사용하는 경우 2 파일 경로와 파일명 필터링 부족 ../(상위 디렉터리)를 이용한 Web Root 상위 디렉터리 접근이 가능한 경우 파라미..