목록웹 해킹 (100)
Oh! JUN
비밀글을 인젝션을 통해 확인해 볼 것이다. 비밀글을 클릭하면 패스워드를 입력해야 되는데 여기에 인젝션을 적용해 볼 것이다. 쿼리를 예상해보면 select * from tb_board where idx=8 and password='[password]' 글 번호 idx와 password가 일치하면 비밀글을 열람할 수 있는 방식일 것이다. 먼저 select * from tb_board where idx=8 and password='' or 1=1-- ' idx=8 and password='' 참 and 거짓 = 거짓 (idx=8 and password='') or 1=1 거짓 or 참 = 참 idx와 pasword가 먼저 and 처리되면서 idx의 값은 무의미해지고 or 1=1로 위의 쿼리가 참을 뜻하게되면서..
※ 실습하기 전 로그인 사이트 제작 //login.php 로그인 페이지 ID : PW : //logout.php //index.php 회원 전용 페이지 입니다. 님 반갑습니다. //loginAction.php
검색 기능의 입력 파라미터뿐만 아니라 컬럼을 구분을 구분해주는 파라미터에서도 취약점을 찾을 수 있다. search_type=all&keyword=test을 쿼리문으로 보면 select * from board where all like '%test%' 구조로 예측을 할 수 있다. search_type=1=1+and+title&keyword=test 을 쿼리문으로 바꾸면 select * from board where 1=1 and title like '%test%' 1=1은 참 title like '%test%' title에 test가 있으니까 참 전체 쿼리문은 참 그래서 이미지 오른쪽 Response에 test문이 검색된걸 확인할 수 있다. search_type=1=2+and+title&keyword=te..
검색 기능의 일반적인 구문 select * from board where title like '%_________%' 검색 기능은 문자에서 검색 하고자 하는 내용을 담고 있어야 하니까 '%_____%' select * from board where title like '%' and '%'='%' title like '%' : 참 '%'='%' : 참 고로 title like '%' and '%'='%' : 참 * %는 와일드 문자로 0개 이상의 문자를 포함하고 있다. like랑 같이 쓰여야 와일드 문자의 기능을 한다. 그래서 test like '%'는 모든 내용을 검색하는거고 and '%' = '%'는 like 구문이 아니어서 %는 단순 문자로 쓰이게된다. 모든 내용이 검색된걸 확인할 수 있다. sele..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.