write-up(web)/LOS
![[Lord of SQLInjection] poltergeist write-up](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FscHDU%2FbtrQTUOS26j%2FAAAAAAAAAAAAAAAAAAAAADmbdr4gQkgGE4uqYG04x80gL0gpZ4rRrvDypiw8sl5E%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3D8JONEzT4Ow8cb6H1wt7FIswLDUI%253D)
[Lord of SQLInjection] poltergeist write-up
문제 화면 및 소스 코드입니다. 플래그는 다른 테이블에 있습니다. mysql에서 information_schema은 없지만 대신 sqlite_master가 있습니다. sqlite_maste의 name에 테이블 네임이 저장되어 있습니다. 테이블 이름을 알아냈습니다. 해당 테이블을 조회하는 플래그 값이 나왔습니다. 끝! 레퍼런스 https://training-1.tistory.com/148 SQLite에서 information_schema rootme-.org에는 SQLite로 된 문제가 종종 있다.(심지어 postgreSQL도 있다.) SQLite에는 information_schema가 없다.그대신 SQLite에는 sqlite_master라는게 있다. 테이블 명과 컬럼 명을 빼낼 때 아래와 같이 하면 된 ..
![[Lord of SQLInjection] banshee write-up](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FkXYdf%2FbtrQTlfcaoD%2FAAAAAAAAAAAAAAAAAAAAAKYXICkYSkS1slZuspVRPOVfz4fm6MPcKe9pAWPR5MrT%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3Dmhvxl%252BwqfrqdSUrFhBxX37x0dGo%253D)
[Lord of SQLInjection] banshee write-up
문제 화면 및 소스 코드입니다. admin의 pw를 구하는 문제입니다. 그동안 계속 해왔던 blind sql injection 문제입니다. 쿼리가 참이면 아래와 같이 login success!가 나옵니다. length 함수, substr 함수, unicode 함수를 활용해서 파이썬으로 코드를 짜줍니다. 끝!
![[Lord of SQLInjection] manticore write-up](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FPdWsK%2FbtrQQioxQSg%2FAAAAAAAAAAAAAAAAAAAAABzOSubN-vM3isHp8Y5JHwrnmyb5FJ95SfUo2pZJ7f25%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3Doy4amSzNwJ45XxZgtzqeTviP740%253D)
[Lord of SQLInjection] manticore write-up
문제 화면 및 소스 코드입니다. 쿼리문의 결과로 admin을 가져오면 됩니다. mysql과 달리 sqlite에서 addslashes는 제대로 동작하지 않는다고 합니다. 이 함수는 이스케이프를 하기위해 백슬래쉬(\)를 추가해주는데 sqlite는 추가하는 백슬래쉬까지 그냥 문자열로 받아들인다고 합니다. 따라서 싱글쿼터를 활용할 수 있습니다. 물론 admin을 직접 입력하긴 어려움으로 char 함수를 사용합니다. 위 내용을 종합해서 쿼리를 짜주면 끝!
![[Lord of SQLInjection] chupacabra write-up](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fb3yEjh%2FbtrQPe7L63f%2FAAAAAAAAAAAAAAAAAAAAABs0ZxnYs08r9F2DPTku45pjzZT1Ns0pZk6V9OKE9Xko%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DETxM6iokq8ShHULgalaS%252BywQd2w%253D)
[Lord of SQLInjection] chupacabra write-up
문제 화면 및 소스 코드입니다. dbms가 mysql에서 sqlite로 바꼈습니다. sqlite에서 주석처리는 --를 사용합니다. 주석을 이용하면 문제를 풀 수 있습니다. 끝!
![[Lord of SQLInjection] cyclops write-up](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FVyLNk%2FbtrQNJ84LoW%2FAAAAAAAAAAAAAAAAAAAAAM3f_Yrcm7xn-eqnK_siNuEws6leK52P19UNLqn-gV29%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DVsKabAvtkShA5o9HekzkYdit5g8%253D)
[Lord of SQLInjection] cyclops write-up
문제 화면 및 소스 코드입니다. 주석을 보면 union select를 사용하라고 나와 있습니다. 필터링을 열심히 우회하다 짜증나서 라업을 살짝 보니 공백은 부분 주석인 /**/로 처리하고 id에는 null을 주기위해 '-1'