$ 웹 해킹 $/los.rubiya.kr
-
[Lord of SQL_injection] #19 xavis$ 웹 해킹 $/los.rubiya.kr 2019. 4. 6. 01:00
문제를 보고 19단계인데 왜이리 쉽지라는 생각이 들었다. 필터링은 like와 regex뿐이고 똑같은 평범한 blind sql injection이네 라는 생각이 들었다. 그래서 저는 바로 참값을 확인해 보았다. 바로 코드를 실행해 보았습니다. 해당 코드의 결과 값으로 12가 나왔습니다. 하지만 값을 하나씩 알아보니 아예나오지 않습니다. 그래서 다음과 같이 각자리의 값의 길이가 몇인지 알아보았습니다. 오잉..? 첫자리의 길이가 4라고 합니다. 이를 보고 저는 아? hex값일수도 있겠구나 라는 생각을 하게 되었습니다. 그렇다면 pw는 총 3자리의 문자열이고 총 길이 12가 나온 이유는 아마.. 4 * 3 이지 않을까 라는 생각을 했습니다. 그렇다면 코드를 수정해 보겠습니다. 모든 pw변수에 hex()를 붙여서..
-
[Lord of SQL_injection] #18 nightmare$ 웹 해킹 $/los.rubiya.kr 2019. 4. 6. 00:58
새로운 방식의 문제가 나온것 같습니다. pw의 길이는 6문자이고 pw의 파라미터로만 입력을 하는것입니다. mysql에서 문자열과 0을 비교했을때 항상 참을 반환한다는것을 알게 되어있습니다. 이름 Mysql의 auto type cast라고 하는데 string의 column값을 int형과 비교를 하게 되면 string은 항상 0을 return 하게 됩니다. 그래서 해당 리턴값과 0을 비교하게 되면 항상 참을 반환하게 되는 것이지요 정확히 6글자 여야 하기 때문에 #과 -가 필터링된 주석처리문제는 %00으로 대체 하겠습니다 ?pw=')=0;%00
-
[Lord of SQL_injection] #17 succubus$ 웹 해킹 $/los.rubiya.kr 2019. 4. 5. 19:20
이문제는 preg의 취약점을 없앤 문제입니다. 싱글쿼터가 필터링 되기 때문에 우리가 los 를 처음할때 사용한 \(백슬래시)를 사용해 보겠습니다. ?id=\&pw= or 1# clear가 되는 이유를 다시 이야기 해보면 id를 닫는 싱글쿼터를 \로 인해서 닫는 역할이 아닌 문자열화가 되었기때문에 빨간색 사각형이 id의 값이 됩니다. 그래서 자연스럽게 or 1를 작성하고 뒤에 pw가 닫히는 싱글 쿼터가 잇기때문에 주석으로 지워준것 입니다.
-
[Lord of SQL_injection] #15 assassin$ 웹 해킹 $/los.rubiya.kr 2019. 4. 5. 19:18
벌써.. 3번째줄 마지막 문제 입니다!! 조금만더 화이팅 하시면 All Clear를 할수 있습니다. 문제를 보면 다음과 같습니다. like로 되어있는 것을 보니 %나 _를 이용하면 우회를 할수 있습니다. 또한 싱글쿼터인 ' 가 필터링 되기 때문에 id에 값을 넣을수가 없습니다. 그렇다는 것은 pw 필드만을 보고 비교해야 합니다. 아래에서 2번째 문장을 보면 id의 값이 admin이 되어야하는것으로 보아 입력한 pw의 값이 admin의 pw면 clear! 되는것 같습니다. ?pw=1% 2% 3% 이와같이 입력을 해보면.. Hello guest가 뜬것으로보아 admin과 guest에 같은 pw가 있나 봅니다. ?pw=902%
-
[Lord of SQL_injection] #13 bugbear$ 웹 해킹 $/los.rubiya.kr 2019. 4. 5. 19:17
이번문제는 blind sql injection 문제 입니다. 필터링 문자열이 단계면 단계마다 많아지 는것 같습니다... pw에는 ' 가 필터링 되고, no에는 ' , substr , ascii , = , or , and , 공백 , like , 0x 를 필터링 시킵니다. 저번 blind에서 사용한 like와 0x전부를 못쓰게 하네요... 이번 문제의 필터링을 우회할수 있는 문자열을 찾아 봅시다.! ?no=0||id%0ain%0a("admin") ' 은 "로 우회하고 =과 like는 in으로 우회했습니다. 그렇다면 이제 pw의 길이와 값을 알아내는 코드를 작성해 봅시다! 실행 결과 :