목록분류 전체보기 (119)
뭉크테크
사고 대응(Incident Response)이란?사고 대응(IR)이란 해킹, 악성코드 감염과 같은 보안 사고가 발생했을 때, 피해를 최소화하고 신속하게 정상 상태로 복구하기 위해 미리 정의된 절차에 따라 체계적으로 행동하는 것을 의미 NIST 사이버 보안 프레임워크(NIST Cybersecurity Framework)**의 표준 사례 NIST 사이버 보안 프레임워크와의 연관성NIST 프레임워크는 사이버 보안 위험을 관리하기 위한 5가지 핵심 기능(식별, 보호, 탐지, 대응, 복구)을 제시하는 국제 표준입니다. 이번 실습은 이 중 네 번째 단계인 '대응(Respond)' 기능에 집중되어 있습니다.실습에서 진행한 각 단계는 '대응' 단계의 핵심 활동과 직접적으로 연결 1. 인스턴스 격리2. 비휘발성 데이터 ..
주제AWS 서비스(이 경우 Lambda)가 다른 AWS 서비스(S3)에 접근할 때는 IAM 역할(Role)을 사용하는 것이 표준적인 모범 사례 구조도 대상 버킷 Lambda 함수함수 생성시 python 언어로 택할 것. 다른 언어 선택시 다시 람다 생성해야함런타임은 단순히 언어만 선택하는 것이 아니라, 해당 언어를 실행하기 위한 운영체제, 라이브러리, 코드 실행 방식(핸들러) 등 모든 실행 환경이 함께 결정되는 것처음에 Nodejs 엔진으로 생성해버려서 다시 생성했음.. Lambda 함수 테스트 코드import jsonimport boto3# S3 클라이언트 생성s3 = boto3.client('s3')def lambda_handler(event, context): # S3에 저장할 파일 내용과 ..
이번 시간은 지금까지 배운 웹캐시 포이즈닝 어택과 관련된 모든 공격들을 조합하여 실습해보도록 하겠습니다. 사전 지식은 이전 포스트들을 참고해주시면 좋겠습니다. 물론 진행하다가 처음 접하는 부분은 그때마다 부연 설명하도록 하겠습니다. 이번 공격 실습 시나리오는 Combining web cache poisoning vulnerabilities이다. 이전까지 배운 웹 캐싱, 리다이랙팅 위치 캐싱 오염, DOM XSS, CORS 우회 등을 활용하여 대상 서버를 웹 캐시 포이즈닝을 하도록 하겠습니다. 이전과 똑같이 확장자 중 Param Miner 툴을 이용하여 취약한 부분을 공략할 헤더가 없는지 확인하고자 대상 서버 홈페이지 위치에 Param Miner의 Guess headers를 사용하였다. 그 결과, x-..
주제 설명웹사이트가 서버에서 JSON 같은 데이터를 받아서 화면에 보여주거나 사용하는데,이걸 검증 없이 바로 DOM에 넣는 경우 문제가 생긴다.거기에 웹 캐시 포이즈닝 기법까지 섞으면?공격자가 모든 사용자에게 악성 JSON을 먹일 수 있게 되는 것이다.🍱 비유로 설명: 식당과 배달생각해봐.너가 단골로 가는 식당이 있는데, 이 식당은 항상 주문한 대로 음식을 정해진 배달 상자에 넣어서 줘.근데 배달 시스템이 이상해서,누군가 몰래 **"짜장면" 박스에 "상한 음식"**을 넣었는데,그걸 모든 짜장면 주문한 사람에게 똑같이 배달하고 있는 거야.게다가, 식당은 그걸 그냥 검사도 안 하고, "이게 짜장면이지 뭐~" 하고 그대로 손님 접시에 담아줘.🧨 그리고 그 상한 음식 안에 "냉장고 열면 터지는 폭탄"이 들어..
너무 많은 정보를 노출하는 응답 활용웹사이트는 응답에 캐시(중간 저장소) 관련 정보를 포함할 때가 있다. 이 정보는 원래 캐시가 잘 작동하도록 돕기 위한 거지만, 공격자에게는 "어떻게 캐시를 오염시킬지"를 알아내는 힌트가 된다.예시서버 응답:HTTP/1.1 200 OK Via: 1.1 varnish-v4 Age: 174 Cache-Control: public, max-age=1800 뜻: "이 응답은 Varnish 캐시를 거쳤고, 캐시에 저장된 지 174초 됐어요. 앞으로 1800초(30분) 동안 유효해요."공격자가 알아낸 것: "아, 캐시가 30분마다 새로고침 되는구나. 174초 지났으니 26분 뒤에 악성 요청 보내면 캐시에 저장되겠네!"공격자는 정확한 타이밍(26분 뒤)에 악성 페이지를 삽입해서 캐시..
웹 캐시 포이즈닝이란?웹 캐시는 웹사이트가 자주 사용하는 데이터를 저장해서 같은 요청이 들어오면 빠르게 응답할 수 있게 해준다. 예를 들어, innocent-site.com이라는 사이트에 접속하면 그 페이지 내용이 캐시에 저장돼서 다음에 접속할 때 로딩이 빨라지는 식이다.하지만 공격자가 이 캐시를 조작하면, 사용자가 정상적인 사이트에 접속했는데도 악의적인 내용(예: 가짜 로그인 페이지나 악성 코드)이 담긴 응답을 받게 될 수 있다.기본적인 공격: 한 가지 헤더 조작먼저 간단한 경우를 보죠. 웹사이트가 HTTPS(보안 프로토콜)를 강제로 사용하게 설정되어 있다고 해볼게요. 사용자가 실수로 http://innocent-site.com/random에 접속하면, 사이트는 "여긴 보안이 안 되니까 HTTPS로 이..
웹 캐시가 뭔가요?먼저, 캐시(cache)가 뭔지 알아야 함. 캐시는 웹사이트가 더 빨리 로드되도록 도와주는 임시 저장소. 예를 들어, 네가 어떤 블로그 글을 보러 가면, 서버가 매번 그 페이지를 새로 만들지 않고 캐시에 저장된 복사본을 보여주는 것. 이게 시간을 절약해줘서 빠르게 볼 수 있는 것. 웹 캐시 포이즈닝이 뭐예요?웹 캐시 포이즈닝은 이 캐시를 악용하는 공격. 공격자가 캐시에 잘못된 내용이나 악성 콘텐츠를 저장하게 만들어서, 그 다음에 그 페이지를 보는 모든 사용자에게 엉뚱한 걸 보여주게 함. 비유하자면, 식당 주방에 몰래 들어가서 재료를 바꿔놓는 것과 비슷함. 손님들이 주문하면 원래 먹으려던 음식이 아니라 이상한 음식이 나오는 셈. 쿠키는 뭐고, 어떻게 연관되나요?**쿠키(cookie)**는..
1. 웹 캐시 포이즈닝이란?정의: 공격자가 캐시(중간 저장소)를 속여서 잘못된(악성) 응답을 저장하게 만들고, 그걸 다른 사용자들에게 제공하게 하는 공격.예시: 사용자가 example.com에 접속하려는데, 캐시가 오염되어 evil.com의 피싱 페이지를 보게 됨.웹 캐시 포이즈닝을 "카페의 주문 시스템"에 비유:상황: 당신이 자주 가는 카페(example.com)가 있어요. 이 카페는 바빠서 손님들이 주문을 빠르게 처리하기 위해 "중간 직원"(CDN/캐시)을 두고, 자주 나오는 주문(예: 아메리카노)을 미리 만들어 놓습니다.정상 작동: 손님이 "아메리카노 주세요"라고 하면, 중간 직원이 미리 만든 아메리카노를 바로 주고, 주방(백엔드 서버)은 새로 만들 필요가 없어요.공격: 누군가(공격자)가 주문표에 ..
https://catalog.us-east-1.prod.workshops.aws/workshops/e5ce2f2a-e576-41cc-838d-4b22da07c67d/ko-KR/6-lab3-waf/a-create-wcl Design Secure Bedrock SaaS Architecture with API gatewayBuilding a scalable and efficient Software as a Service (SaaS) architecture is critical for delivering robust cloud-based applications. This workshop will guide participants through the process of creating a Bedrock SaaS..
https://catalog.us-east-1.prod.workshops.aws/workshops/e5ce2f2a-e576-41cc-838d-4b22da07c67d/ko-KR/1-introduction Design Secure Bedrock SaaS Architecture with API gatewayBuilding a scalable and efficient Software as a Service (SaaS) architecture is critical for delivering robust cloud-based applications. This workshop will guide participants through the process of creating a Bedrock SaaS architec..