rosieblue
article thumbnail
[SQL Injection 팁] 내가 추측한 메타정보(테이블명/칼럼명 등)이 맞는지 확인하는 방법
🔐 Security/Web 2023. 3. 2. 20:44

WHERE 절이 있고, 그 WHERE 절이 참이라는것이 가정되어있을 때, 그 WHERE절 뒤에 AND 를 삽입하면 가 참일 때만 쿼리문이 작동한다. 우리는 부분이 참인지 거짓인지 검사하고 싶을 때 이 방법을 사용한다. 만약 쿼리문이 제대로 작동했다면 부분이 참이라는 뜻일 것이다. 위 내용이 Blind Injection 공격의 흐름이다. 공격을 행할 때 꼭 중요한 정보(ex: password 첫글자가 'm'인가? 이런거 말고) 간단한 정보(메타 정보)도 이와 같은 방식으로 알아낼 수 있다. 여기서 신기한 것은 어떤 정보가 존재하냐, 마느냐도 알아낼 수 있다는 것이다!! 그렇다면 존재성에 대한 쿼리는 어떻게 짜면 좋을까? 앞에 상수를 select 해주면된다. 이게 무슨 뜻일까? 예를 들어 'users' 라는..

article thumbnail
[SQL Injection 실습] SQL injection UNION attack, determining the number of columns returned by the query (PortSwigger)
🔐 Security/Web 2023. 2. 26. 00:50

GOAL : To solve the lab, perform a SQL injection attack that causes the application to display details of all products in any category, both released and unreleased. 주석 처리를 하니까 새로운 상품이 보인다.(+ 내가 카테고리 뒤에 쓴 값이 그대로 출력된다.. -> 정보를 여기서 출력할 수도 있을 듯) 아마 이 이유는 SQL 구문에 WHERE Categories='Gifts' AND ??? 이런식으로 있어서 해당하는 애들만 가져왔는데 아예 주석 처리하니까 그 조건(뭔진 모르지만)을 제외한 애들도 다 보여주는 듯 (즉 AND부터 다 날라가는거) 이런식으로 걍 주석만 없애봐도 새..