no image
AWS 웹 애플리케이션 보안
ArchitectureCloudFormation stack을 통해 위와 같은 아키텍처로 환경 구축을 하고 실습을 진행함아키텍처 설명: AWS 클라우드 상에서 DVWA(Damn Vulnerable Web Application) 서버를 호스팅하기 위해 구성된 네트워크 환경VPN (Virtual Private Cloud) : AWS 상에서 독립된 네트워크를 제공하는 가상 사설 클라우드로, 이 VPC 안에 DVWA 서버와 관련 리소스가 배치가 된다. 서브넷(Subnet) : 퍼블릭 서브넷이 가용 영역(Availability Zone)에 배치된다. 퍼블릭 서브넷 : 인터넷을 통해 접근할 수 있는 네트워크 공간 퍼블릭 서브넷에 배치된 웹 애플리케이션 서버로 DVWA를 사용하였으며, 이는 보안 테스트 목적으로 사용되..
2024.11.16
no image
[AWS WAF] 방어 심화
AWS WAF Version 2( 현재는 AWS WAF라고 부름)가 나오면서 기존에 제공되던 AWS WAF는 AWS WAF Classic으로 변경되었다. AWS WAF Classic과 AWS WAFv2는 모두 AWS에서 제공하는 WAF 서비스이지만 서로 별개의 서비스이며 독립적으로 동작하며  AWS WAF Classic의 지원은 2025년 9월 30일에 종료된다.  이전까지 진행한 방어도 AWS WAF v2를 사용했지만 기존의  AWS WAF Classic에도 존재하는 기능을 사용하여 웹 공격을 방어했다. 이번 방어 심화 실습에서는 AWS WAF v2가 생기면서 추가된 JSON 포맷을 이용한 룰 생성을 진행한다.-> 기존에는 룰의 내용을 변경하기 위해 많은 컨디션을 조작하는 API가 필요했지만 JSON..
2024.11.10
no image
[AWS WAF] CUSTOM RULE
Custom Rule 추가 1 AWS WAF에서 제공하는 국가별 IP 정보를 기준으로 특정 국가에서 유입되는 트래픽을 차단  Chrome Extension에서 Browsec VPN 설치 “OFF”를 “On” 으로 변경한 후 “Change” 버튼을 클릭하여 국가를 Singapore로 변경 Browsec 이 “On” 되어 있는 상태에서는 브라우저에서 발생하는 모든 트래픽은 Singapore에서 발생되는 것처럼 트래픽이 전송됨VPN을 켠 상태에서 DVWA 페이지가 정상적으로 접속되는지 확인페이지가 정상적으로 접속이 된다면 Singapore에서 유입되는 트래픽을 차단하기 위해 Rule을 Web ACL에 추가해야 함 Inspect = Originates from a country in 선택요청의 출발 국가를 기반..
2024.11.09
no image
[AWS WAF] Brute Force
무차별 입력 공격 : 정상적인 사용자의 자격증명 정보를 획득하기 위하여 수많은 자격증명 정보를 입력하는 단순하지만 효과적인 자격증명 탈취방법 중의 하나정상적인 사용자의 자격증명 정보를 획득하기 위해 가능한 모든 자격증명(아이디와 비밀번호) 조합을 시도하는 공격 방식이다.자격증명 정보를 하나씩 입력하며, 맞는 조합이 발견될 때까지 반복한다.자격증명을 훔치려는 단순하지만 효과적인 방법 공격 실습은 AWS Cloud9 환경 구축을 하여 코드 기반으로 진행하려고 했으나 서비스가 종료되었고 현재 프로젝트는 aws waf를 중점으로 두고 있기 때문에 다른 방식으로 방어 실습만 진행함* AWS Cloud9은 브라우저만으로 코드를 작성, 실행 및 디버깅할 수 있게 해주는 클라우드 기반 통합 개발 환경(IDE) 무차별 ..
2024.11.05
no image
[AWS WAF] Backdoor
Backdoor 공격이란공격자가 자신이 입력한 명령을 수행할 수 있는 악성 코드를 웹서버에 업로드 후 이를 통해 여러 가지 정보 수집이나 악의적인 활동을 수행하는 공격  Backdoor 공격 실습이미지 파일을 업로드할 수 있는 페이지가 있고, JPEG나 PNG가 아닌 파일을 업로드했을 때 위와 같은 문구가 뜸 "; $cmd = ($_REQUEST['cmd']); system($cmd); echo ""; die;}?>간단한 백도어 스크립트를 작성한다.이 스크립트를 서버에 업로드하면 공격자가 URL에 매개변수(cmd)를 입력하여 원하는 시스템 명령어를 전달하고 실행할 수 있게 된다.$_REQUEST['cmd']로 전달된 값이 존재하면 해당 값(매개변수)을 $..
2024.11.05
no image
[AWS WAF] Command Injection
Command Injection이란이름 그대로 사용자의 요청에 명령어를 삽입하여 실행하는 공격사용자가 제공하는 데이터가 적절히 검증되거나 escape 처리되지 않을 때 악의적인 명령이 시스템에 주입되어 실행되게 한다.이 취약점을 이용하여 시스템에 접근하거나 데이터를 조작하고, 심지어 시스템을 제어할 수 있다.  Command Injection 공격Enter an IP Address 부분에 IP 주소를 입력하면 ping이 보내진다. 먼저 정상적인 IP 주소 1.1.1.1을 포함&&는 쉘에서 "이전 명령이 성공적으로 실행된 후, 다음 명령을 실행하라"는 의미를 가지고 있기 때문에 cat /etc/passwd 명령이 실행되어 시스템의 사용자 계정 정보가 포함된 /etc/passwd 파일의 내용을 출력하게 된다..
2024.10.29
no image
[AWS WAF] SQL Injection
SQL Injection이란일반적으로 공격자가 웹서버의 중요 정보를 탈취하기 위하여 가장 자주 사용하는 공격 방법 중의 하나사용자의 입력을 데이터 베이스의 쿼리에 반영되도록 구성된 시스템의 취약점을 이용한 공격주로 입력값이 제대로 필터링되지 않은 상태에서 SQL 쿼리에 그대로 포함될 때 발생됨  SQL Injection 공격공격 대상 페이지의 User ID에 먼저 알파벳을 넣었을 때 아무 반응이 없었고 1, 2, 3, 4..... 숫자를 ID로 입력했을 때 위와 같이 ID와 First name, Surname이 확인이 가능하다.따라서 정상적인 경우 User ID와 일치하는 경우 해당 정보가 출력되는 것을 알게 되었다.  User ID 기반 사용자를 조회할 수 있었던 페이지를 대상으로 SQL Injecti..
2024.10.29
no image
[AWS WAF] Stored XSS
Stored XSS란공격자가 공격 Script를 웹사이트에 저장해 두거나 게시판 등의 게시글 등에 저장해 둔 후 사용자가 해당 페이지에 접속하거나 게시글을 클릭하였을 경우 실행되도록 하는 공격해당 공격을 성공적으로 실행하려면 공격자는 웹 애플리케이션의 취약점을 찾은 후 악성 스크립트를 해당 서버에 삽입해야 함주입된 스크립트가 데이터베이스, 메시지 포럼, 방문자 로그, 댓글 필드 등과 같이 대상 서버에 영구적으로 저장됨지속성웹 애플리케이션의 데이터베이스나 파일 시스템 등에 악성 코드가 저장되어 있기 때문에 이후 다른 사용자가 해당 데이터를 요청할 때도 스크립트가 실행됨감염된 페이지를 볼 때마다 악성 스크립트가 피해자의 브라우저로 전송됨가장 흔한 대상은 블로그, 소셜 네트워크, 비디오 공유 플랫폼, 메시지 ..
2024.09.29
no image
[AWS WAF] Reflected XSS
Reflected XSS 란Cross Site Scripting(XSS)공격웹 애플리케이션에서 많이 나타나는 취약점의 하나로 웹사이트 관리자가 아닌 이가 웹 페이지에 악성 스크립트를 삽입할 수 있는 취약점주로 여러 사용자가 보게 되는 전자 게시판에 악성 스크립트가 담긴 글을 올리는 형태로 이루어짐 → 스크립트 형태로 다른 최종 사용자에게 악성 코드를 보냄웹 애플리케이션이 사용자로부터 입력받은 값을 제대로 검사하지 않을 경우 발생Reflected XSS 공격XSS 공격 방법 중 하나사용자가 입력한 URL이나 Parameter , Cookie 등을 기반으로 Script 가 실행되도록 하는 공격악성 스크립트가 웹 애플리케이션에서 피해자의 브라우저로 반사될 때 발생이 공격은 사용자가 클릭한 링크를 통해 활성화되..
2024.09.29
Prev 1 2 3 4 5 Next
반응형