목록Hacking/WebHacking (22)
'll Hacker
1. Write up 작성https://portswigger.net/web-security/access-control/lab-user-role-controlled-by-request-parameter Lab: User role controlled by request parameter | Web Security AcademyThis lab has an admin panel at /admin, which identifies administrators using a forgeable cookie. Solve the lab by accessing the admin panel and using it to ...portswigger.net/admin 에 들어갈 수 없다고 뜸로그인 페이지버프스위트에서 응답이 쿠키를 ..
문제 Ctrl+F 눌러서 organization 검색 결과 중 플래그인 것처럼 위장한 게 보임. 따라서 서버 열어서 기본설정 파일에 나와 있는 admin계정 id와 비번 확인하고 그것으로 로그인 후 찾아보았다. Server admin settings에 플래그가 있는것을 확인!
1. GET 방식으로 데이터 보내기(데이터가 쿼리스트링 형태로 포함됨) 클라이언트의 데이터를 URL 뒤에 붙여서 보냄 쿼리 스트링 => URL?데이터이름=값& 데이터이름=값&.... => '&' 구분자 사용 활용 : 데이터 조회 -> 검색, 페이지 이동, 쿠키와 같은 작은 데이터 전송 https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=0&ie=utf8&query=hello 2. POST방식으로 데이터 보내기(URL에 데이터가 포함되어있지 않음) GET과 달리 데이터는 HTTP 요청의 body에 포함되어 전송됨 POST로 데이터를 전송할때에는 Body영역 데이터 타입을 Header Content-Type에 명시를 해줘야 함. 이때, 데..
1) 코드 분석 (출처:챗쥐피티) 엔드포인트1 : /vuln @app.route("/vuln") # Flask 애플리케이션에서 /vuln 엔드포인트에 대한 라우팅을 정의 # 사용자의 입력을 ㅂ다는 목적으로 보임 def vuln():#핸들러 함수인 vuln을 정의 param = request.args.get("param", "") # Flask에서 제공하는 request 객체를 사용하여 쿼리 매개변수 중 "param"값을 가져오고 있음 # param 이라는 매개변수가 없으면 빈 문자열을 기본값으로 사용 param = xss_filter(param) #가져온 "param"값을 'xss_filter' 함수에 전달하여 XSS(Cross Site Scripting) 공격을 방지하기 위한 필터링 수행 return ..
1) 불충분한 XSS 필터링 1-1) Unicode escape sequence를 통한 우회 -> 자바스크립트 Unicode escape sequence 지원 참고 : https://dencode.com/string/unicode-escape Unicode Escape (\u %u \x &#x U+ 0x \N) Encoder / Decoder Online - DenCode Unicode Escape encoder / decoder. (e.g. "Hello, world!" "\u0048\u0065\u006c\u006c\u006f\u002c\u0020\u0077\u006f\u0072\u006c\u0064\u0021") dencode.com var foo = "\u0063ookie"; // cookie var..
XSS 방어 필터링 우회 기법을 공부해보자 다음 언급된 필터링은 잘못된 방식으로 XSS 취약점을 근본적으로 제거하기 위해서는 태그 삽입이 되지 않도록 처음부터 원인을 제거하는 것이 중요 ‼️ 1) 불충분한 XSS 필터링 1-1) 이벤트 핸들러 속성 -> on으로 시작하는 속성 잠.깐.만🖐️ ! 이벤트 핸들러가 뭘까? 특정 요소에서 발생하는 이벤트를 처리하기 위해 존재하는 콜백 형태의 핸들러 함수 이벤트 핸들러 내에 XSS 공격 코드를 삽입해두면 해당 이벤트가 발생했을 때 XSS 공격 코드가 실행됨 태그의 속성 값으로 들어가는 이벤트 핸드러의 종류는 굉장히 다양하며 각 이벤트가 발생하는 원리가 다양함 참고 : https://developer.mozilla.org/en-US/docs/Web/Events Ev..
클라이언트 사이드 취약점 공격자가 웹 리소스에 악성 스크립트를 삽입해 이용자의 웹 브라우저에서 해당 스크립트를 실행가능 해당 취약점을 통해 특정 계정의 세션 정보를 탈취하고 해당 계정으로 임의의 기능 수행 요즘 SOP 보안 정책 등장하면서 서로 다른 오리진에서는 정보를 읽는 행위가 힘들어짐 => 우회 기법 존재 💡웹 리소스 (출처 : ChatGPT) 웹 리소스(Web Resource)는 웹에서 사용되는 모든 종류의 자원이나 자료를 말합니다. 이는 텍스트, 그림, 동영상, 스타일 시트, 스크립트 파일, 데이터 파일 등과 같은 다양한 형태의 정보를 포함할 수 있습니다. 웹 리소스는 웹 페이지의 내용과 디자인을 형성하며, 웹 개발에서는 이러한 리소스들을 효과적으로 관리하여 웹 페이지의 성능을 향상시키는 것이 ..
실습을 통해 익히기 https://dreamhack.io/wargame/challenges/75/ web-ssrf flask로 작성된 image viewer 서비스 입니다. SSRF 취약점을 이용해 플래그를 획득하세요. 플래그는 /app/flag.txt에 있습니다. 문제 수정 내역 2023.07.17 css, html 제공 Reference Server-side Basic dreamhack.io url 입력창에 나와있는 경로대로 버튼 클릭했더니 위와 같이 나옴 1) 코드 분석 /img_viewer @app.route("/img_viewer", methods=["GET", "POST"]) # Flask 애플리케이션에서 /img_viwer 경로로 들어오는 GET 및 POST 요청을 처리하는 라우트를 정의 d..