OS command injection 취약점/Lab: OS command injection, simple case 실습
·
웹해킹
OS Command Injection이란?URL이나 파라미터를 통해 웹 애플리케이션이 구동되고 있는 서버의 운영체제 OS에 임의의 명령어를 실행하는 취약점이다. Command injection/shell injection으로 불리기도 하고 위험도는 높은 편에 속하는 취약점이다.사용자의 입력값 검증이 제대로 이루어지지 않기 때문에 발생할 수 있음. OS command injection으로 일반 사용자 수준의 권한으로는 중대한 손상을 입히지 못하지만, 권한 상승같은 다른 취약점이랑 합쳐져서 루트, 관리자 권한 계정으로 명령어를 실행하게 되면 더 위험도가 높아진다. 사용할 수 있는 명령어Name of current userwhoamiwhoamiOperating systemuname -averNetwork c..
Lab: SSRF with blacklist-based input filter 필터링 우회 Writeup
·
Writeup
내부 시스템 데이터를 가져와 재고를 확인하는 기능이다재고확인을 하는 URL을 어드민 인터페이스 접근하도록 바꿔서 carlos 계정을 삭제하는 시나리오위치는 임의로 런던으로 세팅한 후 재고확인을 하는 파켓을 burpsuite에서 인터셉트해보자stockApi=http%3A%2F%2Fstock.weliketoshop.net%3A8080%2Fproduct%2Fstock%2Fcheck%3FproductId%3D3%26storeId%3D1POST 메소드로 재고확인하는 파켓을 살펴보자stockApi 파라미터를 보면 storeId도 있고 url의 형식이 있다리피터에서 변조하자 아무런 필터링 우회없이 접근을 시도하니 당연히 400 Bad Request로 막힌다blocked for security reason 을 보니 블..
[Hackthebox] Flag Command - Cyber Apocalypse 2024 CTF Writeup
·
Writeup
2024 Cyber Apocalypse CTF에서 출제됐던 웹 챌린지 문제다할당된 IP주소로 이동하면 시작 페이지가 뜬다 start 시작하고 HEAD NORTH/SOUTH/EAST/WEST 네 개의 방향 중에 고르면 된다동쪽으로 찍었는데 틀려서 숲 속에서 죽었다 아무거나 고르기 보다는 소스코드를 좀 살펴보자  playwon() 함수가 출력되면 플래그를 찾을 수 있을 것 같은데더 직접적인 단서는 못 찾겠다 main.js 소스코드를 더 살펴보면 경로를 좀 알 수 있다 HEAD NORTH→FOLLOW A MYSTERIOUS PATH→SET UP CAMP이렇게 가보자  SET UP CAMP 까지는 도달했는데 그 이후에는 또 죽었다개발자 도구에서는 더 이상 힌트가 없으니 burpsuite의 HTTP history..
[Tryhackme] Passive Reconnaissance
·
웹해킹
Reconnaissance  레콘이란?잠재적 타깃에게 본격적으로 공격을 실행하기 전에 정보를 수집하는 과정을 의미한다. 타깃의 취약점이나 성능과 기능을 파악할 수 있기 때문에 전략을 계획하고 더 정교한 공격을 하는데 도움이 된다레콘은 Active/Passive 이렇데 두 가지로 분류됨Active Reconnaissance: 직접적으로 타깃 지점에 접근해서 정보를 얻을 수 있지만 스스로를 드러내게 됨Passive Reconnaissance: 거리를 두고 정보를 얻는 방식이고 스스로를 드러내지 않으면서 리소스를 얻음 Passive Reconnaissance시스템에 직접적으로 접근하지 않고 공개 소스에서 데이터를 얻거나 스스로를 나타내지 않은 채 트래픽을 인터셉트하는 방식이다. 이외에도 Wireshark를 이..
Lab: Exploiting LLM APIs with excessive agency Writeup
·
Writeup
이전 포스팅에서 LLM 취약점과 공격 예시 이론을 다루었다오늘은 LLM API의 취약점을 공격해서 carlos 계정을 삭제하는 실습을 해보겠음  상품 판매하는 쇼핑 웹사이트인데 오른쪽 상단에 있는 Live Chat을 들어간다 챗봇이나 심심이처럼 정해진 답을 하는게 아닌, 실제 AI와 유사하게 답변을 해준다사용자와 인터렉티브한 소통이 가능하니 프롬프트로 공격하면 되겠다 이 랩의 이름에서 LLM API라고 알려주니까 API정보를 먼저 얻어야겠다어떤 API에 액세스가 되어있는지 물어보니까 password_reset, debug_sql, product_info 이렇게 3개의 API를 알려줌  비밀번호 초기화가 아니라 carlos 계정 자체를 삭제해야 하니까 첫 번째 api는 아니고,debug_sql을 더 살펴봐..
Web LLM Attacks 대규모 언어 모델 AI 보안 취약점
·
웹해킹
AI의 급성장과 더불어 LLM 역시 빠지지 않는 주제이다. gpt처럼 전용 소프트웨어로 사용되는 경우도 있지만 다른 서비스 소프트웨어에 임베드되어 사용되는 경우도 많다(Notion, Canva 등). 오늘은 LLM의 API의 작동방식과 취약점에 대해 다뤄보려고 한다. LLM 대규모 언어 모델이란요즘 정말 많은 기업에서 웹 서비스에 LLM을 도입하고 있는데, 나 역시 GPT, Bard, Gemini 등을 사용하기 때문에 이제는 없어서는 안 되는 존재임이 틀림없다. LLM은 머신러닝 기반의 인공지능으로, 방대한 양의 텍스트를 학습해서 언어 구성 요소를 이해한다. 일반적으로 사용자의 인풋, 프롬프트를 통해 인터렉티브한 서비스를 제공하고, 인풋값은 입력 유효성 규칙을 따라 검증을 거치는 게 일반적이다.  LLM..