보안25 PHP.CGI.Argument.Injection 취약점 (CVE-2024-4577) PHP.CGI.Argument.Injection 취약점 (CVE-2024-4577)개요PHP.CGI.Argument.Injection은 2024년 6월에 발견된 심각한 원격 코드 실행(RCE) 취약점입니다. 이 취약점은 Windows 환경에서 실행되는 PHP CGI에 영향을 미치며, CVSS 점수 9.8(Critical)로 매우 위험합니다.영향을 받는 버전PHP 8.3 PHP 8.2 PHP 8.1 취약점 메커니즘Windows의 "Best-Fit Mapping" 기능을 악용합니다.소프트 하이픈(0xAD) 문자를 사용하여 CGI 핸들러의 이스케이프 처리를 우회합니다.URL 쿼리 문자열에 %AD(URL 인코딩된 소프트 하이픈)를 포함시켜 PHP 프로세스에 임의의 명령줄 인수를 주입할 수 있습니다.공격 예시te.. 보안 2024. 10. 28. 악성 코드 보안 업계에서는 악성코드를 체계적으로 분류하고 식별하기 위해 특정한 명명 규칙을 사용합니다.이 규칙을 이해하면 악성코드의 특성을 신속하게 파악할 수 있어, 효과적인 대응 전략 수립에 도움이 됩니다. 악성코드 명명의 기본 구조는 다음과 같습니다: (스크립트 언어/계열.악성코드 이름)유형 이 구조를 세부적으로 분석해 보겠습니다:스크립트 언어 또는 계열 이는 악성코드의 구현 언어나 실행 환경을 나타냅니다. 예를 들어:JS: JavaScriptHTML: HTMLMSIL: Microsoft Intermediate LanguageAutoIt: AutoIt 스크립팅 언어악성코드 이름/변종 이 부분은 악성코드의 패밀리나 특정 변종을 식별합니다. 예를 들어:Agent: 일반적인 트로이 목마 계열Phishing: 피싱 공.. 보안 2024. 10. 16. [웹모의해킹] 7. XSS(Relected,Stored) 1. Reflected XSS 1. 정의 - 일회성의 HTTP Request와 Response로 이루어진 공격 - 공격자가 악의적인 스크립트를 작성 하고 작성 후 웹 서버 측에 요청시 웹 응용 프로그램에서 피해자의 브라우저로 반사될 때 발생 일회성이며, 지속적이지 않음. 이메일 또는 웹사이트 등을 통해 공격자가 미리 준비한 링크를 사용자가 클릭하게끔 유도하는 방식 2. 실습 what's your name? 뒤에 dvwa를 넣게 되면 주소창에 dvwa가 그대로 출력됩니다. what's your name? 뒤에 alert 스크립트를 작성하여 alert창이 뜨게 할 수 있습니다. alert창이 나옵니다. a태그를 활용하여 페이지 내에 링크를 사용할 수 있습니다. 하단의 링크를 클릭하면 잘 나옵니다. cooki.. 보안 2021. 7. 5. [웹모의해킹] 6. Xss(DOM) 1. Xss(DOM) 1. 개념 피해자의 브라우저가 HTML 페이지를 구문 분석할 때마다 공격 스크립트가 DOM 생성의 일부로 실행되면서 공격함. 페이지 자체는 변하지 않으나, 페이지에 포함되어 있는 브라우저 측 코드가 DOM환경에서 악성코드로 실행됨. 2. DVWA 실습 3. 대응방안 3-1. 입,출력 값 검증 및 무효화 - 스크립트 등 해킹에 사용될 수 있는 코딩에 사용되는 입력 및 출력 값에 대해서 검증하고 무효화한다. - 입력 값에 대한 유효성 검사를 미리한다. - 태그 등 위험한 문자 입력 시에 문자 참조로 필터링하고 서버에서 브라우저로 전송시 문자를 인코딩한다. 3-2. 위험 문자 인코딩 보안 2021. 7. 1. [웹모의해킹] 5. Weak Session IDs 1. Weak Session IDs 1. 정의 - 웹 애플리케이션 구현에 있어 서비스에 접근하는 사용자의 인증 값이나 세션,쿠키 성장/관리 구현에서 발생하는 취약점을 공격하는 기법 - 비 인가자의 로그인 없이 서비스 페이지에 접근하거나 관리자 페이지까지 접근할 수 있음. 2. 세션 클라이언트와 웹 세션 간 일정 시간 동안의 연결방법 3. 쿠키 웹 서버에서 생성하며 웹 브라우저에 보내어 저장하며 서버의 부가적인 요청이 있을 때 다시 서버로 보내주는 문자열의 정보 4. 세션 vs 쿠키 5. DVWA 실습 6. 대응방안 - 세션 id를 공격자가 추측하기 어렵게 랜덤 생성 알고리즘 사용 - Rails와 Django 같은 프레임 워크를 사용하여 쿠키 서명 => 쿠키 변조 방지 보안 2021. 7. 1. [웹모의해킹] 4-2. Blind SQL Injection 2. Blind SQL Injection 1. 정의 SQL 쿼리 요청에 대한 응답 결과가 참, 거짓에 따라 데이터를 획득하는 공격. 데이터 베이스 내에 데이터를 하나씩 요청하여 이에 대한 응답으로 필드 값이나 테이블 명 같은 정보를 찾아내는 방식이며 하나의 쿼리당 하나의 응답을 주고 받기 때문에 많은 쿼리 요청이 전제되어야 하며 원하는 정보를 얻기까지 소요시간이 길다. 2. 종류 1. Boolean 기반 : 참, 거짓에 따라 반복적으로 수행하여 추측하는 방식 2. Time 기반 : 쿼리에 대한 응답이 "참"일 경우, sleep()함수를 사용하여 특정 시간만큼 지연시키는 공격 방식이며 거짓일 경우에 sleep() 함수가 실행되지 않으므로 시간 지연없이 응답이 이루어짐. 3. 실습을 위해 사용한 함수 4. .. 보안 2021. 6. 10. [웹모의해킹] 4. SQL Injection 1. SQL Injection 1. 정의 악의적인 사용자가 보안상의 취약점을 이용하여 임의의 SQL문을 주입하고 실행되게 하여 데이터베이스가 비정상적인 동작을 하도록 조작하는 행위 2. 종류 1. Error Based SQL Injection 논리적 오류를 발생시킬 수 있는 SQL 쿼리를 요청하여 오류 발생시 표시되는 정보를 기반으로 데이터베이스 및 쿼리 구조 등의 정보를 획득할 수 있는 공격 2. Union Based SQL Injection 2개 이상의 SQL쿼리에 요청하여 결과를 합칠 수 있는 Union SQL 연산자를 이용한 공격이며 원래 요청에 한개의 추가 쿼리를 삽입하여 정보를 얻어낼 수 있음. 3. Time Based SQL Injection SQL 쿼리 결과를 특정 시간 만큼 지연시키는 방.. 보안 2021. 6. 10. [웹모의해킹] 3. File Upload, Insecure Captha 1. File upload 1. 개념 파일업로드 게시판 등의 파일 업로드 할 수 있는 기능을 악용하여 악의적인 파일 업로드를 통해 시스템 권한을 장악하는 기법. 2. 공격방법 구분 설명 파일 확장자 우회 1.서버 우회 2.클라이언트 우회 취약점 1.정상 확장자(JPG,PNG 등)를 이용한 우회 2.WEB/WAS 취약점 악용 우회 3.Application (OS,DBMS,Editor 등) 취약점 악용 우회 3. 취약점 사례 첨부파일 기능을 이용하는 취약점. 첨부파일을 업로드 할 수 있는 웹 에디터의 취약점을 이용하는 방식입니다. 웹쉘 공격에 사용되는 파일을 업로드 하거나 원하는 동작을 직접 대상 시스템이 사용하는 서버 사이드 언어로 작성하여 업로드 합니다. 만약, 대상 서버에서 업로드 파일에 대한 .. 보안 2021. 6. 10. [웹모의해킹] 2. CSRF, File Inclusion 1. CSRF 1. CSRF의 정의 세션 쿠키, SSL 인증서, 윈도우 도메인 인증과 같이 정상 사용자가 인증된 상태에서 사용자 요청을 공격자가 변조함으로써 정상 사용자의 권한으로 게시글을 추가, 변조, 개인정보 변경 등의 악의적인 행위를 수행하는 공격 2. XSS vs CSRF XSS CSRF 공통점 웹 브라우저에 악성 스크립트를 입력 차이점 (공격 실행 주체) 공격자가 웹 브라우저에 악성스크립트를 삽입하여 공격을 진행 XSS와 동일하게 악성스크립트를 삽입하고 실행주체가 공격자가 아닌 정상 사용자, 서버 측에 정상 사용자의 권한으로 행위를 요청 3. 실습 패스워드를 1234로 변경 패스워드를 1234로 변경하였습니다. 1234인 패스워드를 hacker로 변경 1234로 변경하고 난 후에 주소값을.. 보안 2021. 6. 10. [웹모의해킹] 1. DVWA구성, Command Injection,Brute Force Attack 1. DVWA (Windows) 0. DVWA구성 1.APM SETUP 설치 2. Dvwa 설치 후 apm setup 하단의 htdocs 파일 안에 압축 해제 3. 127.0.0.1에 접속하여 정상작동을 확인 4. MyAdmin 접속하여 dvwa라는 데이터베이스 생성 5. Config.inc.php파일로 이름을 바꾼 후 유저와 비밀번호 변경 6. php.ini에 635번부터 643번 줄까지 주석 제거 7. 캡차 구글에서 발급 8. 발급받은 값 Config.inc.php 안에 넣어줌. 특히 소문자 l(엘)과 대문자 I(아이)를 혼동하는 경우를 조심하세요. (제가 그래서 몇일 고생했습니다...ㅠㅠ) 위에 그대로 따라하면 안되는 경우 절대 없습니다. 혹시 안되면 댓글 남겨주세요!! 최대한 도와드릴게요!! .. 보안 2021. 6. 10. [웹취약점진단] 5. 웹쉘 실습편 (예제2) 5. 실습1 준비물: 메타플로잇 테이블, 웹쉘 샘플파일 1. 메타스플로잇 테이블 다운 2. 메타스플로잇 테이블을 VM에서 열고, IP A로 아이피 확인. 3. 크롬에서 IP에 들어가서, dvwa로 접속 4. 보안등급을 미디움으로 설정. 5. 업로드에서 DVWA에 이미지 업로드 6. 해당 이미지 파일의 경로를 찾아 들어감 7. php 웹쉘 업로드 전에 hello.php 페이지를 열어 테스트 진행 8. hello world php가 성공적으로 업로드가 됨을 확인 9. php info 실행 확인 10. 인터넷에서 웹쉘 샘플파일을 수집하고, 윈도우 보안기능 해제, 업로드시에 파일명 변경하여 업로드 11. 개발자 도구 접속하여 파일 크기 키움. * 웹쉘 업로드시에 파일 크기때문에 업로드 제한이 되는 것을 확인. .. 보안 2021. 6. 9. [웹취약점진단] 4. 웹쉘 이론편 1. 웹 셀 1. 웹쉘 정의 웹 셸(web shell)은 업로드 취약점을 통하여 시스템에 명령을 내릴 수 있는 코드를 말한다. 웹 쉘의 공격서버의 스크립트 언어로 되어 있어야 동작한다. 2. 해커의 웹쉘 접속 방법 - 해당 파일이 있는 파일 경로에 접속함. - 경로를 아는 방법 a. 바로가기 복사, 디렉토리 트레버서 등을 이용 - 공격 성공시 해커의 행동패턴 a. 서버 내부 파일을 삭제 b. 서버 데이터베이스의 내용 수정 가능. * 해커가 루트 권한을 얻으면 모든 것을 제어함. 3. 해커 방어 방법 a. 확장자 검사 - jpg,png,docx등만 올릴 수 있도록 하고 exe,php,jsp,asp는 금지 b. 마임타입검사 - Asp,Php값을 첨부하면 마임타입은 어플리케이션값을 갖게 된다. - 만약.. 보안 2021. 6. 9. 이전 1 2 3 다음