[DH] Strong BypassIF

Writeup
2025. 8. 11.

Introduction

Strong bypassif 문제에 대한 writeup입니다.

문제 특성상 exploit에 대해서는 서술하지 않았으며, 배경 지식만 정리했다.

CURL

여기서 curl에 대한 자세한 정보를 확인할 수 있다.

그중 잘못사용되면 요청을 변형할 수 있는 문법이 있는데 []{}이다.
[]는 URL에서 반복된 요청을 처리하기 위해서 [0-9]와 같이 사용되며,
{}는 URL에서 여러 요청을 처리하기 위해서 {a, b, c}과 같이 리스트처럼 사용된다.

[]{}는 curl에서 우선순위가 높기 때문에 @이든, ?이든, / 이든 상관없이 []{}가 먼저 처리된다. 따라서 {}로 url을 감싸버리고, 원하는 url을 넣으면 https://{oldurl.com, evil.com}과 같이 순차적으로 요청을 보낼 수 있다.

찾아보니 언인텐으로 푼 듯 하다

CVE?

https://spring.io/security/cve-2024-22243 (6.1.0 - 6.1.3)
https://spring.io/security/cve-2024-22259 (6.1.0 - 6.1.4)
https://spring.io/security/cve-2024-22262 (6.1.0 - 6.1.5)

무려 같은 곳에서 CVE가 3개나 있다. 이를 이용해서도 풀이가 가능하다. 이를 위해서 각 버전을 비교하며 취약점을 찾았고, 어렵지 않게 적힌대로 3개를 찾을 수 있었다.

문제에서는 6.14이므로 cve-2024-22259 또는 cve-2024-22262를 이용할 수 있다.

[DH] Strong BypassIF