<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Practitioner on 보안 연구 노트</title><link>https://blog.mingon.dev/tags/practitioner/</link><description>Recent content in Practitioner on 보안 연구 노트</description><generator>Hugo -- gohugo.io</generator><language>ko-KR</language><lastBuildDate>Sun, 05 Jul 2026 09:00:00 +0900</lastBuildDate><atom:link href="https://blog.mingon.dev/tags/practitioner/index.xml" rel="self" type="application/rss+xml"/><item><title>[Write-up] PortSwigger - Referer-based access control</title><link>https://blog.mingon.dev/write-up/portswigger/access-control/write-up-portswigger---referer-based-access-control/</link><pubDate>Sun, 05 Jul 2026 09:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/access-control/write-up-portswigger---referer-based-access-control/</guid><description>관리자 기능이 Referer 헤더로 접근을 판단하는 점을 이용해, 헤더를 /admin으로 위조한 채 자신을 승격시키는 풀이</description></item><item><title>[Write-up] PortSwigger - Multi-step process with no access control on one step</title><link>https://blog.mingon.dev/write-up/portswigger/access-control/write-up-portswigger---multi-step-process-with-no-access-control-on-one-step/</link><pubDate>Sat, 04 Jul 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/access-control/write-up-portswigger---multi-step-process-with-no-access-control-on-one-step/</guid><description>역할 변경 2단계 중 확인 단계만 권한 검사가 빠진 점을 이용해 확인 요청을 단독으로 보내 관리자가 되는 풀이</description></item><item><title>[Write-up] PortSwigger - Method-based access control can be circumvented</title><link>https://blog.mingon.dev/write-up/portswigger/access-control/write-up-portswigger---method-based-access-control-can-be-circumvented/</link><pubDate>Sat, 04 Jul 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/access-control/write-up-portswigger---method-based-access-control-can-be-circumvented/</guid><description>POST에만 걸린 권한 검사를 OPTIONS 메서드로 우회해 자신의 계정을 관리자로 승격시키는 풀이</description></item><item><title>[Write-up] PortSwigger - URL-based access control can be circumvented</title><link>https://blog.mingon.dev/write-up/portswigger/access-control/write-up-portswigger---url-based-access-control-can-be-circumvented/</link><pubDate>Sat, 04 Jul 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/access-control/write-up-portswigger---url-based-access-control-can-be-circumvented/</guid><description>프런트엔드가 /admin 접근을 차단하지만 백엔드가 X-Original-URL 헤더를 신뢰하는 점을 이용해 관리자 기능을 우회하는 풀이</description></item><item><title>[Write-up] PortSwigger - File path traversal, validation of file extension with null byte bypass</title><link>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-validation-of-file-extension-with-null-byte-bypass/</link><pubDate>Mon, 29 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-validation-of-file-extension-with-null-byte-bypass/</guid><description>확장자 검증을 null 바이트로 우회해 /etc/passwd를 읽는 풀이와, 애플리케이션과 시스템 콜의 문자열 표현 차이에서 비롯되는 절단 결함 정리</description></item><item><title>[Write-up] PortSwigger - File path traversal, validation of start of path</title><link>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-validation-of-start-of-path/</link><pubDate>Mon, 29 Jun 2026 09:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-validation-of-start-of-path/</guid><description>기준 디렉터리로 시작하는지만 검사하는 접두 검증을 경로를 유지한 채 탈출해 우회하는 풀이와, 정규화 전 문자열을 검증하는 설계의 문제 정리</description></item><item><title>[Write-up] PortSwigger - File path traversal, traversal sequences stripped with superfluous URL-decode</title><link>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-traversal-sequences-stripped-with-superfluous-url-decode/</link><pubDate>Sun, 28 Jun 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-traversal-sequences-stripped-with-superfluous-url-decode/</guid><description>검증 이후에 한 번 더 수행되는 URL 디코딩을 이중 인코딩으로 파고들어 경로 이탈 필터를 우회하는 풀이와, 파서 차이 문제로서의 인코딩 우회 정리</description></item><item><title>[Write-up] PortSwigger - File path traversal, traversal sequences stripped non-recursively</title><link>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-traversal-sequences-stripped-non-recursively/</link><pubDate>Sun, 28 Jun 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-traversal-sequences-stripped-non-recursively/</guid><description>경로 이탈 시퀀스를 한 번만 제거하는 필터를 &amp;hellip;.// 중첩 시퀀스로 우회하는 풀이와, 차단과 제거의 차이를 판별하는 진단 방법 정리</description></item><item><title>[Write-up] PortSwigger - File path traversal, traversal sequences blocked with absolute path bypass</title><link>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-traversal-sequences-blocked-with-absolute-path-bypass/</link><pubDate>Sun, 28 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/path-traversal/write-up-portswigger---file-path-traversal-traversal-sequences-blocked-with-absolute-path-bypass/</guid><description>경로 이탈 시퀀스를 차단하는 필터를 절대경로로 우회해 /etc/passwd를 읽는 풀이와, 차단 목록 방식 검증의 구조적 한계 정리</description></item><item><title>[Write-up] PortSwigger - CSRF with broken Referer validation</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-with-broken-referer-validation/</link><pubDate>Thu, 25 Jun 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-with-broken-referer-validation/</guid><description>대상 도메인이 포함되기만 하면 통과하는 느슨한 Referer 검증을 exploit server 경로에 도메인을 넣고 unsafe-url 정책으로 전체 URL을 노출시켜 우회하는 풀이</description></item><item><title>[Write-up] PortSwigger - CSRF where Referer validation depends on header being present</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-referer-validation-depends-on-header-being-present/</link><pubDate>Thu, 25 Jun 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-referer-validation-depends-on-header-being-present/</guid><description>Referer가 있을 때만 검증하는 안전하지 않은 폴백을 referrer policy로 헤더 자체를 제거해 우회하는 풀이</description></item><item><title>[Write-up] PortSwigger - SameSite Lax bypass via cookie refresh</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---samesite-lax-bypass-via-cookie-refresh/</link><pubDate>Thu, 25 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---samesite-lax-bypass-via-cookie-refresh/</guid><description>기본 Lax 쿠키에만 적용되는 2분간의 POST 완화 구간을 OAuth 로그인 랜딩으로 재발급시켜 되살리고, rfc6265bis와 Chromium 구현에서 그 조건을 확인하는 풀이</description></item><item><title>[Write-up] PortSwigger - SameSite Strict bypass via sibling domain</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---samesite-strict-bypass-via-sibling-domain/</link><pubDate>Thu, 25 Jun 2026 09:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---samesite-strict-bypass-via-sibling-domain/</guid><description>Strict 쿠키로 막힌 CSWSH를 CORS 헤더로 발견한 sibling 도메인의 XSS를 발판 삼아 same-site 컨텍스트에서 성립시키고 챗 기록의 자격 증명을 유출하는 풀이</description></item><item><title>[Write-up] PortSwigger - SameSite Strict bypass via client-side redirect</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---samesite-strict-bypass-via-client-side-redirect/</link><pubDate>Wed, 24 Jun 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---samesite-strict-bypass-via-client-side-redirect/</guid><description>Strict 쿠키로 교차 사이트 요청이 막힌 환경에서 postId 파라미터를 따라가는 클라이언트 측 리다이렉트를 경로 탈출로 조작해 same-site 요청을 만들어내는 풀이</description></item><item><title>[Write-up] PortSwigger - SameSite Lax bypass via method override</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---samesite-lax-bypass-via-method-override/</link><pubDate>Wed, 24 Jun 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---samesite-lax-bypass-via-method-override/</guid><description>기본 Lax 정책이 최상위 GET 탐색만 허용하는 환경에서 _method 파라미터로 POST를 위장해 교차 사이트 이메일 변경을 성립시키는 풀이</description></item><item><title>[Write-up] PortSwigger - CSRF where token is duplicated in cookie</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-is-duplicated-in-cookie/</link><pubDate>Wed, 24 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-is-duplicated-in-cookie/</guid><description>쿠키와 파라미터의 값 일치만 확인하는 Double Submit 방식을 CRLF 주입으로 양쪽 값을 모두 공격자가 정해 우회하는 풀이</description></item><item><title>[Write-up] PortSwigger - CSRF where token is tied to non-session cookie</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-is-tied-to-non-session-cookie/</link><pubDate>Wed, 24 Jun 2026 09:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-is-tied-to-non-session-cookie/</guid><description>csrfKey 쿠키에 결합된 토큰을 검색 기능의 CRLF 주입으로 덮어써, 공격자가 확보한 키와 토큰 쌍으로 피해자의 이메일을 변경하는 풀이</description></item><item><title>[Write-up] PortSwigger - CSRF where token is not tied to user session</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-is-not-tied-to-user-session/</link><pubDate>Tue, 23 Jun 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-is-not-tied-to-user-session/</guid><description>세션과 결합되지 않은 전역 토큰 풀을 이용해 공격자 계정에서 발급받은 CSRF 토큰을 피해자 요청에 그대로 재사용하는 풀이</description></item><item><title>[Write-up] PortSwigger - CSRF where token validation depends on token being present</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-validation-depends-on-token-being-present/</link><pubDate>Tue, 23 Jun 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-validation-depends-on-token-being-present/</guid><description>토큰이 제출된 경우에만 검증하는 구현에서 csrf 파라미터를 통째로 생략해 방어를 우회하는 풀이</description></item><item><title>[Write-up] PortSwigger - CSRF where token validation depends on request method</title><link>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-validation-depends-on-request-method/</link><pubDate>Tue, 23 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/csrf/write-up-portswigger---csrf-where-token-validation-depends-on-request-method/</guid><description>POST 요청에만 적용되는 CSRF 토큰 검증을 GET 메서드로 전환해 우회하고 img 태그 한 줄로 이메일을 변경하는 풀이</description></item><item><title>[Write-up] PortSwigger - Manipulating the WebSocket handshake to exploit vulnerabilities</title><link>https://blog.mingon.dev/write-up/portswigger/websocket/write-up-portswigger---manipulating-the-websocket-handshake-to-exploit-vulnerabilities/</link><pubDate>Fri, 12 Jun 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/websocket/write-up-portswigger---manipulating-the-websocket-handshake-to-exploit-vulnerabilities/</guid><description>이벤트 핸들러를 차단하는 XSS 필터를 대소문자 변형으로 우회하고, 핸드셰이크에 X-Forwarded-For 헤더를 추가해 IP 기반 차단을 풀어내는 풀이</description></item><item><title>[Write-up] PortSwigger - Cross-site WebSocket hijacking</title><link>https://blog.mingon.dev/write-up/portswigger/websocket/write-up-portswigger---cross-site-websocket-hijacking/</link><pubDate>Fri, 12 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/websocket/write-up-portswigger---cross-site-websocket-hijacking/</guid><description>CSRF 토큰 없이 쿠키만으로 인증되는 WebSocket 핸드셰이크를 교차 사이트에서 열어, 피해자의 챗 기록과 자격 증명을 유출하는 CSWSH 풀이</description></item><item><title>[Write-up] PortSwigger - Reflected XSS protected by very strict CSP, with dangling markup attack</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-protected-by-very-strict-csp-with-dangling-markup-attack/</link><pubDate>Mon, 08 Jun 2026 13:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-protected-by-very-strict-csp-with-dangling-markup-attack/</guid><description>외부 리소스를 제한하는 엄격한 CSP에서 누락된 form-action을 이용해 폼 제출 목적지를 바꾸고 CSRF 토큰을 획득하는 풀이</description></item><item><title>[Write-up] PortSwigger - Exploiting XSS to bypass CSRF defenses</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---exploiting-xss-to-bypass-csrf-defenses/</link><pubDate>Sat, 06 Jun 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---exploiting-xss-to-bypass-csrf-defenses/</guid><description>Stored XSS로 피해자의 계정 페이지에서 CSRF 토큰을 읽고 이메일 변경 요청을 전송하는 공격 연계 풀이</description></item><item><title>[Write-up] PortSwigger - Exploiting cross-site scripting to capture passwords</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---exploiting-cross-site-scripting-to-capture-passwords/</link><pubDate>Sat, 06 Jun 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---exploiting-cross-site-scripting-to-capture-passwords/</guid><description>Stored XSS로 로그인 입력 요소를 삽입해 브라우저의 자동 완성 값을 획득하고 피해자 계정으로 로그인하는 풀이</description></item><item><title>[Write-up] PortSwigger - Exploiting cross-site scripting to steal cookies</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---exploiting-cross-site-scripting-to-steal-cookies/</link><pubDate>Sat, 06 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---exploiting-cross-site-scripting-to-steal-cookies/</guid><description>댓글의 Stored XSS를 이용해 피해자의 세션 쿠키를 유출하고 해당 세션으로 사용자를 사칭하는 풀이</description></item><item><title>[Write-up] PortSwigger - Reflected XSS into a template literal with angle brackets, single, double quotes, backslash and backticks Unicode-escaped</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-a-template-literal-with-angle-brackets-single-double-quotes-backslash-and-backticks-unicode-escaped/</link><pubDate>Sat, 06 Jun 2026 09:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-a-template-literal-with-angle-brackets-single-double-quotes-backslash-and-backticks-unicode-escaped/</guid><description>여러 구분 문자가 인코딩된 JavaScript 템플릿 리터럴에서 ${} 표현식을 이용해 코드를 실행하는 Reflected XSS 풀이</description></item><item><title>[Write-up] PortSwigger - Reflected XSS into a JavaScript string with angle brackets and double quotes HTML-encoded and single quotes escaped</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-a-javascript-string-with-angle-brackets-and-double-quotes-html-encoded-and-single-quotes-escaped/</link><pubDate>Fri, 05 Jun 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-a-javascript-string-with-angle-brackets-and-double-quotes-html-encoded-and-single-quotes-escaped/</guid><description>작은따옴표 앞에 추가되는 역슬래시를 공격자가 입력한 역슬래시로 상쇄해 JavaScript 문자열을 탈출하는 Reflected XSS 풀이</description></item><item><title>[Write-up] PortSwigger - Stored XSS into onclick event with angle brackets and double quotes HTML-encoded and single quotes and backslash escaped</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---stored-xss-into-onclick-event-with-angle-brackets-and-double-quotes-html-encoded-and-single-quotes-and-backslash-escaped/</link><pubDate>Fri, 05 Jun 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---stored-xss-into-onclick-event-with-angle-brackets-and-double-quotes-html-encoded-and-single-quotes-and-backslash-escaped/</guid><description>댓글 Website 값이 onclick의 JavaScript 문자열에도 삽입되는 지점에서 HTML 엔티티 디코딩을 이용해 이스케이프를 우회하는 Stored XSS 풀이</description></item><item><title>[Write-up] PortSwigger - Reflected XSS into a JavaScript string with single quote and backslash escaped</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-a-javascript-string-with-single-quote-and-backslash-escaped/</link><pubDate>Fri, 05 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-a-javascript-string-with-single-quote-and-backslash-escaped/</guid><description>작은따옴표와 역슬래시가 이스케이프되는 JavaScript 문자열에서 HTML 파서의 script 종료 규칙을 이용하는 Reflected XSS 풀이</description></item><item><title>[Write-up] PortSwigger - Reflected XSS in canonical link tag</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-in-canonical-link-tag/</link><pubDate>Fri, 05 Jun 2026 09:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-in-canonical-link-tag/</guid><description>현재 URL이 canonical link의 작은따옴표 속성에 반사되는 지점에 accesskey와 onclick을 주입하는 Reflected XSS 풀이</description></item><item><title>[Write-up] PortSwigger - Reflected XSS with some SVG markup allowed</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-with-some-svg-markup-allowed/</link><pubDate>Thu, 04 Jun 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-with-some-svg-markup-allowed/</guid><description>일반적인 태그와 이벤트를 차단하는 WAF에서 허용된 SVG animateTransform 요소와 onbegin 이벤트를 찾는 Reflected XSS 풀이</description></item><item><title>[Write-up] PortSwigger - Reflected XSS into HTML context with all tags blocked except custom ones</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-html-context-with-all-tags-blocked-except-custom-ones/</link><pubDate>Thu, 04 Jun 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-html-context-with-all-tags-blocked-except-custom-ones/</guid><description>표준 HTML 태그가 모두 차단된 환경에서 포커스 가능한 커스텀 요소와 URL fragment를 이용하는 Reflected XSS 풀이</description></item><item><title>[Write-up] PortSwigger - Reflected XSS into HTML context with most tags and attributes blocked</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-html-context-with-most-tags-and-attributes-blocked/</link><pubDate>Thu, 04 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-xss-into-html-context-with-most-tags-and-attributes-blocked/</guid><description>WAF가 허용하는 body 태그와 onresize 이벤트를 열거하고 iframe 크기 변경으로 자동 실행하는 Reflected XSS 풀이</description></item><item><title>[Write-up] PortSwigger - Stored DOM XSS</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---stored-dom-xss/</link><pubDate>Thu, 04 Jun 2026 09:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---stored-dom-xss/</guid><description>댓글 데이터를 innerHTML에 삽입하기 전 replace로 첫 꺾쇠만 치환하는 불완전한 이스케이프를 우회하는 Stored DOM XSS 풀이</description></item><item><title>[Write-up] PortSwigger - Reflected DOM XSS</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-dom-xss/</link><pubDate>Wed, 03 Jun 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---reflected-dom-xss/</guid><description>서버가 JSON에 반사한 검색어를 클라이언트가 eval로 처리하는 흐름에서 역슬래시 이스케이프 누락을 이용하는 Reflected DOM XSS 풀이</description></item><item><title>[Write-up] PortSwigger - DOM XSS in AngularJS expression with angle brackets and double quotes HTML-encoded</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---dom-xss-in-angularjs-expression-with-angle-brackets-and-double-quotes-html-encoded/</link><pubDate>Wed, 03 Jun 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---dom-xss-in-angularjs-expression-with-angle-brackets-and-double-quotes-html-encoded/</guid><description>HTML 인코딩된 검색어가 ng-app 범위에 삽입되는 환경에서 AngularJS 표현식과 Function 생성자로 alert를 실행하는 DOM XSS 풀이</description></item><item><title>[Write-up] PortSwigger - DOM XSS in document.write sink using source location.search inside a select element</title><link>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---dom-xss-in-document.write-sink-using-source-location.search-inside-a-select-element/</link><pubDate>Wed, 03 Jun 2026 12:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/xss/write-up-portswigger---dom-xss-in-document.write-sink-using-source-location.search-inside-a-select-element/</guid><description>storeId 파라미터가 document.write를 통해 select 내부 option으로 삽입되는 컨텍스트를 탈출하는 DOM XSS 풀이</description></item><item><title>[Write-up] PortSwigger - SQL injection with filter bypass via XML encoding</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-with-filter-bypass-via-xml-encoding/</link><pubDate>Thu, 21 May 2026 19:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-with-filter-bypass-via-xml-encoding/</guid><description>XML 입력을 파싱하기 전에 SQL 키워드를 차단하는 WAF를, 문자 엔티티 인코딩(파싱 불일치)으로 우회해 UNION 공격으로 administrator 계정 정보를 탈취하는 풀이</description></item><item><title>[Write-up] PortSwigger - Blind SQL injection with out-of-band data exfiltration</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-out-of-band-data-exfiltration/</link><pubDate>Thu, 21 May 2026 18:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-out-of-band-data-exfiltration/</guid><description>OAST 채널을 확장해, 조회한 비밀번호를 DNS 요청의 서브도메인에 실어 Burp Collaborator로 직접 빼내는 Out-of-band 데이터 유출 풀이 (Oracle)</description></item><item><title>[Write-up] PortSwigger - Blind SQL injection with out-of-band interaction</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-out-of-band-interaction/</link><pubDate>Thu, 21 May 2026 17:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-out-of-band-interaction/</guid><description>응답 내용·오류·시간 어떤 인밴드 신호도 없는 환경에서, DB가 외부로 DNS 조회를 수행하도록 유도해 취약점을 확인하는 OAST(Out-of-band) 기법 풀이 (Oracle)</description></item><item><title>[Write-up] PortSwigger - Blind SQL injection with time delays and information retrieval</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-time-delays-and-information-retrieval/</link><pubDate>Thu, 21 May 2026 16:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-time-delays-and-information-retrieval/</guid><description>조건이 참일 때만 지연을 거는 CASE 구문으로, 응답 시간의 변화를 신호로 삼아 비밀번호를 비트 단위로 추출하는 Time-Based Blind SQL Injection 풀이 (PostgreSQL)</description></item><item><title>[Write-up] PortSwigger - Blind SQL injection with time delays</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-time-delays/</link><pubDate>Thu, 21 May 2026 15:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-time-delays/</guid><description>응답 내용 차이도 오류도 없는 환경에서, 지연 함수(pg_sleep)를 삽입해 응답 시간으로 취약점을 확인하는 Time-Based Blind SQL Injection 풀이 (PostgreSQL)</description></item><item><title>[Write-up] PortSwigger - Visible error-based SQL injection</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---visible-error-based-sql-injection/</link><pubDate>Thu, 21 May 2026 14:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---visible-error-based-sql-injection/</guid><description>DB 오류 메시지가 응답에 그대로 노출되는 환경에서, 문자열을 정수로 캐스팅해 원하는 데이터를 오류 메시지로 끌어내고 길이 제한을 우회해 비밀번호를 획득하는 풀이 (PostgreSQL)</description></item><item><title>[Write-up] PortSwigger - Blind SQL injection with conditional errors</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-conditional-errors/</link><pubDate>Thu, 21 May 2026 13:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-conditional-errors/</guid><description>응답 차이가 전혀 없고 오류 발생 여부만 관측 가능한 환경에서, CASE 문으로 조건에 따라 오류를 강제 유발해 비밀번호를 비트 단위로 추출하는 Error-Based Blind SQL Injection 풀이 (Oracle)</description></item><item><title>[Write-up] PortSwigger - Blind SQL injection with conditional responses</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-conditional-responses/</link><pubDate>Thu, 21 May 2026 11:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---blind-sql-injection-with-conditional-responses/</guid><description>쿼리 결과나 오류가 노출되지 않는 환경에서, 조건의 참·거짓에 따라 달라지는 응답(Welcome back 메시지)을 신호로 삼아 비밀번호를 비트 단위로 추출하는 Boolean-Based Blind SQL Injection 풀이</description></item><item><title>[Write-up] PortSwigger - SQL injection UNION attack, retrieving multiple values in a single column</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-union-attack-retrieving-multiple-values-in-a-single-column/</link><pubDate>Thu, 21 May 2026 10:00:00 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-union-attack-retrieving-multiple-values-in-a-single-column/</guid><description>문자열 컬럼이 하나뿐인 상황에서 문자열 연결 연산자로 username과 password를 하나의 컬럼에 합쳐 조회하는 PortSwigger 랩 풀이</description></item><item><title>[Write-up] PortSwigger - SQL injection UNION attack, retrieving data from other tables</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-union-attack-retrieving-data-from-other-tables/</link><pubDate>Thu, 21 May 2026 09:12:54 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-union-attack-retrieving-data-from-other-tables/</guid><description>앞서 파악한 컬럼 수와 문자열 컬럼을 이용해 users 테이블의 사용자명·비밀번호를 조회하고 administrator로 로그인하는 PortSwigger 랩 풀이</description></item><item><title>[Write-up] PortSwigger - SQL injection UNION attack, finding a column containing text</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-union-attack-finding-a-column-containing-text/</link><pubDate>Thu, 21 May 2026 08:12:44 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-union-attack-finding-a-column-containing-text/</guid><description>컬럼 수를 파악한 뒤 각 컬럼에 문자열을 삽입해, 문자열 데이터와 호환되는 컬럼을 찾아내는 PortSwigger 랩 풀이</description></item><item><title>[Write-up] PortSwigger - SQL injection UNION attack, determining the number of columns returned by the query</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-union-attack-determining-the-number-of-columns-returned-by-the-query/</link><pubDate>Wed, 20 May 2026 14:25:12 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-union-attack-determining-the-number-of-columns-returned-by-the-query/</guid><description>ORDER BY와 UNION SELECT NULL을 이용해 원본 쿼리가 반환하는 컬럼 수를 파악하는 PortSwigger 랩 풀이</description></item><item><title>[Write-up] PortSwigger - SQL injection attack, querying the database type and version</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-attack-querying-the-database-type-and-version/</link><pubDate>Wed, 20 May 2026 14:12:45 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-attack-querying-the-database-type-and-version/</guid><description>UNION 기반 SQL Injection으로 컬럼 수와 데이터 타입을 파악한 뒤 데이터베이스 버전 문자열을 조회하는 PortSwigger 랩 풀이 (Oracle · MySQL · Microsoft)</description></item><item><title>[Write-up] PortSwigger - SQL injection attack, listing the database contents</title><link>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-attack-listing-the-database-contents/</link><pubDate>Wed, 20 May 2026 14:12:44 +0900</pubDate><guid>https://blog.mingon.dev/write-up/portswigger/sql-injection/write-up-portswigger---sql-injection-attack-listing-the-database-contents/</guid><description>메타데이터 뷰(information_schema, all_tables)를 조회해 사용자 계정 테이블과 컬럼을 열거하고, administrator의 비밀번호를 탈취해 로그인하는 PortSwigger 랩 풀이 (non-Oracle · Oracle)</description></item></channel></rss>