Web LLM Attacks 대규모 언어 모델 AI 보안 취약점
·
웹해킹
AI의 급성장과 더불어 LLM 역시 빠지지 않는 주제이다. gpt처럼 전용 소프트웨어로 사용되는 경우도 있지만 다른 서비스 소프트웨어에 임베드되어 사용되는 경우도 많다(Notion, Canva 등). 오늘은 LLM의 API의 작동방식과 취약점에 대해 다뤄보려고 한다. LLM 대규모 언어 모델이란요즘 정말 많은 기업에서 웹 서비스에 LLM을 도입하고 있는데, 나 역시 GPT, Bard, Gemini 등을 사용하기 때문에 이제는 없어서는 안 되는 존재임이 틀림없다. LLM은 머신러닝 기반의 인공지능으로, 방대한 양의 텍스트를 학습해서 언어 구성 요소를 이해한다. 일반적으로 사용자의 인풋, 프롬프트를 통해 인터렉티브한 서비스를 제공하고, 인풋값은 입력 유효성 규칙을 따라 검증을 거치는 게 일반적이다.  LLM..
Lab: JWT authentication bypass via unverified signature Writeup
·
Writeup
JWT는 헤더, 페이로드, 시그니처 이렇게 3가지로 이루어져 있다.이번 랩은 세션을  JWT 기반으로 관리하고, JWT의 시그니처를 검증하지 않는 취약한 서버다세션 토큰을 수정해서 admin 패널을 탈취한 후 carlos 계정을 삭제하는 시나리오다  랩 설명에서 주어진 계정정보 wiener:peter로 로그인을 한다어드민이 아니라 일반 유저 권한이기 때문에 Burpsuite에 들어가서 로그인 파켓을 찾아보자repeater에서 변조하면 될 듯 시작하기 전에 JWT 토큰을 변경하기 위해서는 burpsuite의 확장자인 JWT Editor을 설치하자Extensions 탭에 들어가서 BAPP Store에서 찾을 수 있음  로그인에 해당하는 GET 메서드, /my-account?id=wiener 파켓을 살펴보면쿠..
취약점 점검 자동화 도구 SQL Map, JWT 크랙
·
웹해킹
SQL Map SQL Injectiom 취약점을 찾고 테스트하는 데 사용되는 자동화 오픈소스 툴로 MySQL, Oracle, PostgreSQL 등 다양한 DB를 지원한다. 취약점 확인뿐만 아니라 파일 시스템, 쉘 접근 같은 공격도 자동화가 가능  SQL Map 옵션 딜레이 Delay: sql 맵이 쿼리를 실행하는 간격을 설정하고 서비스의 부하를 줄이는 역할을 하므로 방화벽이나 CDN 서비스 차단을 방지하는데 사용리스크 Risk: 공격의 위험성을 관리하고 SQL 맵의 동작을 제한하여 서비스에 치명적 영향을 방지하여 운영 서비스 안전을 위한 기능이다, 실제 운영 중인 서비스를 분석할 때 반드시 고려해야 함Tor: 탐지 우회를 위해 사용R 옵션: 캡쳐된 HTTP 요청을 분석하는 데 사용됨, 특히 JSON 형..
웹해킹 취약점 실습 환경 Wizmall 도커Docker에서 구축하기
·
웹해킹
최근에 계속 보안 패치가 되는 웹 사이트는 방어대응이 많이 되어있어 공격하기가 쉽지 않음. 그래서 10년 전에 사용됐던 쇼핑몰 CMS를 예시로 취약점 분석을 해보겠음. PHP 언어로 작성되어 있는데 PHP 만의 특이한 취약점이 있어서 실제 블랙박스 모의해킹에도 도움이 된다고 한다. 10년 전에 사용된 웹사이트라서 지금 관점에서 보면 엄청 취약점이 많고 소스코드와 리소스가 다 노출되어 있어서 실습하기 매우 좋은 환경이다   확인되는 취약점이 100개도 넘고 File Download Vulnerability, SQLi, XSS, Open Redirection 등의 흔한 취약점도 많을 뿐만 아니라 PHP에서 발생하는 Type Confusion 취약점도 존재한다  도커 설치 자체는 어려운 점이 없으므로 설명 생..
웹 취약점 체이닝의 개념과 실제 버그 사례
·
웹해킹
XSS 취약점을 발견했다고 치면 단순히 스크립트 실행을 넘어서, 이 취약점으로 어떤 피해를 입힐 수 있는지를 보여주는 것이 좋다. (ex XSS공격의 영향으로 개발용 세션 정보가 실제 운영환경에서도 노출되는 경우)세션 탈취가 어렵다면 open redirect, zero-day 취약점 등으로 시스템에 직접 접근하는 방법도 쓸 수 있겠다 XSS의 주된 목적은 사용자의 세션 탈취이고, HTTP Only 등의 옵션으로 방지 조치 가능 하나의 취약점이 아니라 여러 취약점을 연계해서 파급력을 키우는 것→ 취약점 체이닝  2016년 Uber 우버에서 발견된 실제 취약점 셀프 XSS 공격은 일반적으로 공격자가 사용자를 속여 악성 코드를 브라우저의 DevTools 콘솔에 복사하여 붙여 넣도록 유도하는 것. 피해자 스스로..
[Hackthebox] Fawn Challenges Writeup
·
Writeup
핵더박스의 Fawn 챌린지를 풀어보았다일단 FTP란 File Transmission Protocol, 즉 클라이언트와 서버 간에 파일 전송을 위한 프로토콜을 의미함  FTP에서 사용되는 포트는 20, 21: 20번은 데이터 전송, 21번은 명령어 전송에 사용함FTP의 더 안전한 프로토콜은 SFTP Task 5From your scans, what version is FTP running on the target? 타겟의 ftp 버전을 파악하는 문제이다 출력 결과를 살펴보자  vsFTPd 3.0.3인것이 확인되고 운영되는 OS는 유닉스 환경이다계정 없이 로그인하는 상황이기 때문에 username이 anonymous으로 설정로그인 성공에 뜨는 상태 코드는 230  파일과 디렉토리를 출력하는 명령어 ls, 다..