webhacking.kr(29)
-
webhacking.kr - old55
처음 접속하면 위와 같이 마우스가 움직일때 같이 움직여서 점수를 얻을 수 있는 페이지가 나옵니다. 여기서 rank 페이지에 접속을 시도해보면 위와 같이 페이지가 나오고, 맨 아래에 쿼리문을 보여줍니다. 아마 sqli 가 동작할 듯 합니다. score를 누르게 되면 위와 같이 get인자로 전송해줍니다. 여기서 sqli를 테스트해보면 참 일때는 jandi, 거짓일때는 피터팬을 출력합니다. 따라서 이를 이용해서 테이블 명을 구하기 위해 limit과 procedure analyse() 를 엮어서 테이블 명을 추출해주고, if문을 이용해서 해당 password의 문자열 길이를 구해줍니다. import requests import string #https://webhacking.kr/challenge/web-31/..
2021.04.12 -
webhacking.kr - old22
문제 화면에 접속하면 admin으로 접속하라고 나옵니다!! 기본적인 sqli 를 해보니 구문이 참이 되는 경우에는 아래와 같이 나오고, 구문이 거짓인 경우는 login fail이라고 나옵니다. 근데 join버튼이 있으니 회원가입을 진행해보면 username : m0nd2y pw : 1234 완료되었다고 뜨고, 로그인해주면 해쉬값이 나옵니다. hash가 32자리니까 md5일 가능성이 높고, decrypt돌려주면 전에 입력했던 비번 + apple 이 출력되는것을 알 수 있습니다. salt 값이 apple 이라고 추측할 수 있겠죠. 이제 admin의 비번을 알아내기 위해 아까 찾았던 1'or'1=1'-- -구문을 변환해서 > admin'and length(pw)="+str(i)+"-- -" 구문을 활용해줍니다..
2021.04.11 -
webhacking.kr - old52
처음 문제를 접속하면 위와 같이 나오고, admin_page에 접속을 시도해보면 로그인 창이 나옵니다. 당연히 id 비번을 모르는 상황이니 로그인을 시도해보면 로그인이 안되고 위와 같이 뜹니다. 코드를 확인해보면 view-source id를 확인하는 부분에서 > $query = "select id from member where id='{$id}' and pw='{$pw}'"; id = admin'-- - 으로 쿼리 우회가 가능할 것 같습니다. 우회 후에는 위와 같이 뜨네요. 127.0.0.1 어드민 ip가 아니여서 안된다고 합니다. 그럼 이 부분을 검증하는 코드를 다시 확인해보면 $_SERVER['REMOTE_ADDR'] 부분이니까 서버 자체에서 서버에게 요청을 하는 구문을 만들어야겠습니다. 처음에 있..
2021.04.10 -
webhacking.kr - old53
처음에 접속하면 소스코드 하나만 확인할 수 있습니다.
2021.04.07 -
webhacking.kr - old35
처음에 접속하면 위와 같이 입력창이 나옵니다. sqli문제이기에 소스코드를 확인해보면 Challenge 35 phone :
2021.04.06 -
webhacking.kr - old8
처음 접속하면 hi guest라는 문자를 출력합니다. 소스코드를 확인해보면
2021.04.04