전체 글(603)
-
18. LOS - NIGHTMARE
문제를 보면 pw를 참으로 만들어주고, 뒤를 주석처리해주면 될 것같다. 하지만 -- - 와 # 가 모두 필터링당해서 다른 주석 처리인 ;%00 을 사용해야한다. 앞에 pw 를 찾을 만들어주기 위해서는 sql 자동 형변환을 이용하면되는데 'a'=0 (참) a = int --> 0 이므로 이를 이용하면 된다. 따라서 payload : ?pw=')=0;%00 성공이다.
2021.01.30 -
17. LOS - zombie_assassin
해당 문자에서는 strrev() --> 문자열 뒤집기 addslashes --> \ 추가 필터링이 들어가있다. select id from prob_zombie_assassin where id='' and pw='' 쿼리에서 id에 "를 넣어주게 되면 query :select id from prob_zombie_assassin where id='"\' and pw='' 처럼 처리가 된다. 그러면 id=("\' and pw = ) 까지를 id로 인식하기 때문에 뒤에 or 1=1 -- - 넣어주면 된다. los.rubiya.kr/chall/zombie_assassin_eac7521e07fe5f298301a44b61ffeec0.php?id=%22&pw=%20-%20--1=1%20%20ro 뒤집어서 넣어줘야하는거..
2021.01.30 -
16. LOS - succubus
예전에 13번이였나 풀면서 어려워서 더 이상 못 풀었던걸로 기억하는데 확실히 그간 성장이 있기는 있었다는 것을 느낀다. 문제 풀면서 접한것들이 많아서인지 보면 기발한 아이디어들이 조금씩 생각나는 것 같다. 해당 문제를 보면 ' 쿼터가 필터링 되어있다. 이를 우회하기 위해서는 흔히 사용하는 파이썬 문법에서 string = "It's me" 라고 표현할때 string = "IT\'s me" 라고 써야 하는것을 다들 알것이다 이를 활용해서 풀었다. 아래와 같이 ?id=\&pw=or 1=1 -- - 이라고 넣어주면 쿼리가 select id from prob_succubus where id='\' and pw='or 1=1 -- -' 밑줄 부분을 id값으로 인식해서 우회가 가능하다 (grin)
2021.01.29 -
15. LOS - assassin
문제 화면이다 \' 으로 쿼터(%27)이 필터링 되어있어서 사용이 불가능하므로 다른 방안을 찾아야한다. like 문을 줬기에 _%, %_, %_% 을 활용해서 풀이할수 있다. like [0-9][a-Z]% 를 활용해서 문제를 풀어보자 import requests import string num_alpa = string.digits + string.ascii_letters cookies = {'PHPSESSID': 'l3toagi0tdl3lhfji1bkfaj7dk'} #https://los.rubiya.kr/chall/bugbear_19ebf8c8106a5323825b5dfa1b07ac1f.php?pw=123&&no=12%0d||mid(pw,1,1)%0din%0d("0")--%0d- key = "" pri..
2021.01.29 -
rootme - HTTP - Headers
문제 사이트를 접속하면 아래와 같이 http response 를 확인하는것을 권장한다. responce 를 확인하면 > Header-RootMe-Admin: none 와 같은 부분이 보인다. 이 부분을 request에 Header-RootMe-Admin: yes로 변환해서 넣으면 해결됩니다.
2021.01.28 -
14. LOS - gian
실행하면 해당 화면이 나온다 get으로 from 뒤를 받는데 해당 부분이 붙어 있어서 sql 쿼리가 실행 안된다. 필터링에서 제외된 띄어쓰기 문자를 넣으면 된다. %0a~%0d 를 넣어봤더니 %0a --> X %0b --> O %0c --> O %0d --> X 결과가 나왔다 필터링 그대로 들어가나보다. https://los.rubiya.kr/chall/giant_18a08c3be1d1753de0cb157703f75a5e.php?shit=%0c 풀린다(grin)
2021.01.28