Loading...
2019. 11. 13. 17:15

LOS - (1) gremlin

SQL Injection 문제들을 풀어볼 수 있는 사이트이다. GET[id]와 GET[pw]를 통해 id와 pw를 알맞게 넘겨야 하는 것 같다. 일단 처음에 id=1 pw=1을 넘겨줘봤다. 작은따옴표로 들어가는 것을 볼 수 있다. 아무 일도 일어나지 않으니 pw값을 무조건 true로 만들고 넘겨주면?? id에 1을 넣고 pw='1' or '1'='1'을 통해 pw가 무조건 참이 되도록 해주니 Clear! (작은따옴표를 치고 엔터를 치면 자동으로 %27로 바뀌어서 넘겨진다.)

2019. 10. 31. 14:06

Webhacking.kr - (54)

페이지에 들어가니 Password is 다음에 문자가 하나씩 빠르게 지나가고 마지막에 ?가 뜬다. 페이지 소스를 보니 answer()함수를 수정해야 할 것 같다. 처음에 setTimeout함수를 검색해봐서 1000이 1초이길래 20 -> 2000으로 수정해서 answer(0)을 입력해주니 FLAG가 한글자 당 약 2초 동안 뜬다. 근데 이 방법은 FLAG가 길면 받아적기 힘들고 시간이 오래걸린다. 따라서 4번째줄의 aview.innerHTML 에다가 x.responseText를 추가해주는 식으로 함수를 수정했다. 마지막줄에 x.responseText가 빈칸이면(끝이면) ?로 바뀌는 코드도 삭제해주었다. answer(0)을 넘겨주니 한글자씩 이어서 출력되었다. Auth에 FLAG를 입력해주면 해결!

2019. 10. 30. 23:43

Python Challenge - 6

6번문제 - 사진밖에 없다. 아래 버튼을 눌러보니 돈 내라고 한다 페이지 소스를 봐도 기부해달라고 나온다... (5단계까지 무료버전이고 6단계부터 돈내야 하는 건줄...) 페이지 소스 맨위에 zip이 써져 있다. 주소창에 channel.zip을 치니 zip파일이 하나 다운이 되었다. zip파일을 열어보니 txt 파일이 몇백개가 있고 readme를 열어보니 90052 부터 시작하고 zip안에 답이 있다고 한다. 90052.txt를 열어보니 앞에서처럼 'next nothing is ~~' 글씨가 써져있다. 앞에 푼 문제에서 처럼 nothing을 따라가면 답이 나오는 것 같다. 근데 일일이 txt파일을 다 열 수는 없을 것 같아서 검색을 하던 중 zipfile모듈이 있다는 것을 발견했다. 간단하게 설명하면 c..

2019. 10. 30. 23:42

Python Challenge - 5

5번문제 - 발음하라고 한다. title이 peak hell이므로 발음하면 뭐가나올까.. (피켓?픽헬?) peak hell과 발음이 비슷한 것이 뭔지 물어보고 banner.p가 있길래 열어보니 몇백줄의 글자들이 뜬다. 구글링을 해보니 pickle 모듈이 있다는 것을 알게 되었다. html에 bytes형태로 들어가니 loads()함수를 썼다. txt를 출력해보니 알 수 없는 문자들이 나온다. 아마 2차원 리스트인 것 같다. 리스트 한 칸을 한 줄이라 생각하고 안의 요소들을 붙여서 출력해보니 해결!

2019. 10. 28. 21:16

Webhacking.kr - (26)

view-source를 누르니 urldecode를 한 id값이 "admin"이면 solve가 되는 것 같다. 일단 주소창에 id=admin을 넣었다. 아마 decode 한 값이 admin이 나와야 하는 것 같다. 따라서 admin을 인코딩한 값인 %61%64%6d%69%6e을 넣어보자 (인코딩표 : https://www.degraeve.com/reference/urlencoding.php) 주소창에 넣고 엔터를 치면 자동으로 admin으로 다시 바뀌면서 넘어가서 no!가 뜬다. 그럼 %61%64%6d%69%6e을 한번 더 인코딩하면?? %61%64%6d%69%6e을 한번 더 인코딩한 값인 %25%36%31%25%36%34%25%36%64%25%36%39%25%36%65를 넘겨줬더니 해결!

2019. 10. 28. 10:50

Webhacking.kr - (1)

view-source 를 눌러보니 COOKIE[user_lv] 이 6이상이면 1로 설정되고 5보다 크면 solve가 되는 것 같다. cookie 값을 5.1로 설정하고 적용하면 해결!

2019. 10. 28. 01:04

Python Challenge - 4

그림을 눌러보니 next nothing is 44827이라고 뜬다. 주소창에 마지막에 linkedlist.php?nothing=12345라고 되어있으니 nothing 뒤에 저 숫자를 넣어보면 될 것 같다. 처음에 10개정도 넣어보다가 계속 나오는거 보고 때려치고 처음화면에서 페이지 소스를 봤다. urllib를 사용하라는 것 같고 400번 nothing을 입력하면 될 것 같다. urlopen함수를 통해 url을 열고 앞에 문제에서 풀었던 것처럼 read()로 글자들을 불러오면 and the next nothing is '숫자' 가 나온다. re.findall()을 통해 숫자만 거른뒤 k에 넣고 출력하니 숫자들이 필요한 숫자가 나온다. 그 숫자를 다시 c에 넣고 8번째 줄으로 보내주면 자동으로 nothing..

2019. 10. 27. 21:27

Python Challenge - 3

3번 문제 - 영어를 해석하니 양쪽에 3개의 보디가드에 둘러 싸인 작은 글자를 찾으라고 되어있다. 코드를 보니 또 엄청난 알파벳들이 있다. 아마도 대문자 3개 사이에 있는 소문자를 찾는 문제인 것 같다. 페이지 title을 보니 re라고 되어있다. 예전에 웹 크롤링할 때 잠깐 본 것 같은 함수여서 구글링을 해서 re.findall()함수를 쓰면 될거 같다고 생각했다. 정규표현식 : https://wikidocs.net/4308 5번째줄 : [A-Z]가 3개 반복되고 [a-z]가 있고 그 다음에 [A-Z]가 또 3개 반복되는 문자열을 찾는다는 뜻이다. 근데 결과값이 너무 많이 나온다... 아마 저렇게 거르면 XXXXxXXXX 이런식의 문자열도 같이 나오는 것 같다. 따라서 앞뒤로 [a-z]를 추가하면 대문..