본문 바로가기
3. 웹 애플리케이션 취약점 진단/Lord of Sql Injection

lord of sql injection 33번 - cthulhu

by Robert8478 2023. 12. 22.

이번엔 뭔가 실전과 같은 문제가 나왔다. 필터링 자체는 별거 없지만 이번엔 아파치 웹 방화벽인 ModSecurity가 동작하고 있다. 그렇기 때문에 왠만한 SQL 인젝션 코드들은 방어될 것이다. 이 ModSecurity 웹 방화벽을 뚫어야만 한다.

보다시피 기본적인 sql 쿼리를 넣었을때 Forbidden으로 블로킹된다.

구문을 아예 통째로 hex화 시켜 넣어보았는데도 결과는 같았다.
그렇다면 아무래도 웹 방화벽을 우회할만한 웹방화벽 자체 취약점을 노리는것이 맞는것 같다.
이번 문제는 대놓고 페이지가 사용하는 웹방화벽의 버전이 그대로 나와있다.
이런 취약한 부분을 이용해서 해킹을 해보자.
구글에 해당 웹방화벽 버전을 검색해서 취약점을 찾아보았다.
https://github.com/SpiderLabs/owasp-modsecurity-crs/issues/1181

 

Bypass the latest CRS v3.1.0 rules of SQL injection · Issue #1181 · SpiderLabs/owasp-modsecurity-crs

Type of Issue False Negative Description Per #1167, I wanna raise more FNs in this thread. Before getting into other FNs, I want to give out more information to #1167 so as to help the maintainers ...

github.com

그랬더니 바로 이런 정보가 나왔는데 해당 웹방화벽을 bypass 할수있는 쿼리가 그대로 나왔다
몇개의 쿼리가 있었는데 그중 하나는 -1'<@=1 OR {a 1}=1 OR ' 구문을 넣는것이었다.

그것을 그대로 인자값으로 넣으니 클리어되었다.