[HackCTF] Web - Wise Saying 풀이
2021. 8. 29. 18:00
워게임/HackCTF
처음에 url을 통해서 접속하니 로그인이 필요하다는 메시지와 함께 해당 홈페이지로 리다이렉트 되었다. 당연히 처음에 인젝션 기본 구문을 넣어서 시도 해보았는데 바로 로그인 되어서 이렇게 쉽게 풀린다고? 생각했는뎁,,, (아무거나 입력해도 그냥 로그인 되었다... 쩝..) 번호를 순서대로 하나씩 눌러보면 옆의 글이 하나씩 나오는데 글의 앞자리를 따와서 확인해보면 "SESSION LFI" 라는 힌트를 얻을 수 있었고 소스보기를 통해서 phpinfo에 접근을 해볼 수 있었다. 그래서 세션이 저장되는 위치를 확인해보니 no value라고 뜬다 찾아보니 default 값으로 tmp아래에 저장된다고 한다. 그럼 바로 확인해보자! ID 값에 을 넣어주고 PW는 전에 아무거나 입력해도 된다는 힌트를 얻었기 때문에 아무..
[HackCTF] Web - Auth3ntication 풀이
2021. 8. 21. 21:48
워게임/HackCTF
처음에 Username과 Password를 통해서 인증을 받아 flag값을 추출하는 문제인줄 알고 인젝션을 시도해보았는데 되질 않았다,,, 소스보기를 통해서 봐보자,,, 소스에 별다른 힌트는 없는듯 보이고 맨 아래 부분에 cresponse라는 id 값이 보인다. 이 id 값을 넣으면 flag 값을 얻을 수 있는건가? 바로 확인해보자. cresponse라는 값을 넣어보니 사진과 같이 나왔는데 의심스러운 문자열이 보인다 'dumbh4ck5' 이 값도 한번 넣어보자. 사진과 같은 값이 나왔다. 한번 id에 dumbh4ck5, password에 XorIsNotSooS3cur3를 넣어보자. 그렇게 되면 flag 값을 구할 수 있었다... 생각보다 간단하게 타고 들어가면 풀리는 문제였다. 쩝.
[HackCTF] Web - LOL 풀이
2021. 8. 15. 23:59
워게임/HackCTF
you are not local이라고 메시지가 나오는 것을 보아하니 local로 접속하는 방법을 찾아봐야 할듯싶다. 일단 하이퍼링크에 들어가보자. 들어가보니 사용자에 대해 검색을 할 수 있는 것 같다. 검색시도를 해봅시다! 소스코드를 보니 userName을 입력하여 입력 값이 op.gg 페이지와 연결되나 보다. 여기서 이용해야할 취약점은 SSRF(Server Side Request Forgery)이다. SSRF는 Server Side Request Forgery의 약자로 유사한 이름을 가진 CSRF(Cross Site Request Forgery) 와는 다르게 클라이언트 측의 요청을 변조시키는 것이 아닌 서버 측 자체의 요청을 변조하여 공격자가 원하는 형태의 악성 행위를 서버에 던져주면 서버가 검증 없이..
[HackCTF] Web - Cookie 풀이
2021. 8. 14. 00:21
워게임/HackCTF
들어가자마자 쿠키가 반겨준다.. 쿠키와 관련이 있는 문제 같으니 바로 확인해보자. 쿠키 값으로 'WlhsS2NGcERTVFpKYWtscFRFTktNR1ZZUW14SmFtOXBXak5XYkdNelVXbG1VVDA5' 확인 하였고 쿠키 값에 정보가 들어가 있을 수 있으니 디코딩을 시도. 3회 base64로 디코딩 해보니 id=2, guest라는 값이 들어가 있는 것을 확인할 수 있었다. 그럼 id=1, admin으로 해서 쿠키 값을 전송해 보면 flag 값을 얻을 수 있을거 같다. 변조 후 전송해보았지만 깨꿀맛 쿠키가 패스워드 틀림과 함께 나를 반겨준다... 찾아보니 이문제는 strcmp 취약점을 이용해서 푸는 문제이다. strcmp에서 어떤 문자열을 비교할때 배열을 넣게 되면 우회가 가능하다.(php 버전..
[HackCTF] Web - 마법봉 풀이
2021. 8. 8. 15:02
워게임/HackCTF
바로 View Source를 통해서 확인해보자. 소스보기를 통하니 "240610708"을 md5로 암호화한 값과 입력값을 sha1으로 암호화한 값이 일치하면 flag 값을 반환한다는 것을 알 수 있었다. "240610708"을 md5로 암호화 하면 "0e462097431906509019562988736854"로 암호화 된 값을 확인할 수 있었다. 그러면 어떻게 md5와 sha1의 암호화한 동일한 값을 찾을 수 있을까? 바로 PHP Magic Hash라는 것을 찾아보면 알 수 있다. php magic hash 라는 것에 대해 간단히 설명하면 이렇게 두가지 변수가 선언되어 있다고 하면 $a == $b라하면 동일하다고 판단된다. 왜냐하면 e를 지수로 판단한다 즉, $a가 0*e1234 = 0이라 판단되고, $..
[HackCTF] Web - Login 풀이
2021. 8. 6. 22:47
워게임/HackCTF
들어가면 로그인 페이지가 반겨주고 Login버튼과 View Source버튼이 보인다. 바로 소스부터 봐보자. 바로 query문이 보이고 id와 pw를 검증하는것 같다. db는 mysql을 사용한다는 정보를 가지고 인젝션을 진행해 보자. id와 pw에 admin을 넣고 로그인을 진행할때 burp를 통해서 인젝션을 진행해 보았다. 이렇게 id 파라미터 뒤에 'or '1'='1을 넣어주었다. 이렇게 되면 위 query문이 id 값을 검증 우회할 수 있기 때문에 flag 값을 얻을 수 있다. 즉, 쿼리문에 select * from jhyeonuser where binary id='admin'or '1'='1' 이렇게 입력이 들어가게 되면서 pw가 틀리더라도 로그인이 된다는 의미이다. 그렇게 값을 보내면 flag..
[HackCTF] Web - Guess me 풀이
2021. 8. 1. 23:47
워게임/HackCTF
들어가니 php 코드와 함께 문제가 주어졌다. 코드를 살펴보니 secret.txt 파일 안에 $secretcode 값과 입력하는 $guess 값이 일치해야 flag 값이 나오는 듯 하다. 임의로 'asdf'라는 값을 넣어보니 GET 방식으로 guess라는 파라미터 값에 'asdf' 값이 들어 있는것을 볼 수 있었다. 이때 소스코드를 보면 guess라는 파라미터에 값을 넣어 보냈으니 &구분자와 filename에 같은 값을 넣어 보내면 flag 값이 나오지 않을까 생각해보았다. 흠, 이렇게 푸는 문제가 아닌가보다. 그래서 코드를 다시한번 살펴보니 extract함수를 볼수 있었다. extract함수는 전에 변수가 선언되어 있을 때, 변수를 한번 더 선언해 주면 초기 값으로 변경이 된다. 즉, url 뒤에 gu..
[HackCTF] Web - 보물 풀이
2021. 7. 24. 21:02
워게임/HackCTF
보물 문제는 page 버튼 번호에 따라서 특정 값이 나오는 것을 확인할 수 있었다. 소스보기(F12)를 통해서 더 확인해 보자 별로 특별한 내용은 보이지 않고 button을 누르게 되면 action을 통해 각 번호에 해당하는 내용을 get 방식으로 불러오는듯 하다. 해서 해당 url의 page 파라미터에 4를 넣어보니 page=4에 대한 답이 나왔다. 9번까지 해보다가 파이썬 반복문을 활용해서 찾아보도록 하자. 간단한 반복문을 활용해서 HackCTF{라는 문자열이 나오면 그 해당 번호를 출력하게 작성하였다. flag 값이 1225번에 있다고 나온다. 그렇다면 실제로 들어있는지 확인보도록 하자. 이렇게 flag 값으로 HackCTF{0hhhhh_5o_g0od_try!}를 찾을 수 있었다.
[HackCTF] Web - / 풀이
2021. 7. 20. 23:59
워게임/HackCTF
처음 들어가는 순간 Hidden Flag와 로봇 사진이 나왔다. 습관적으로 소스보기(F12)를 눌러보자. 소스를 확인해보니 img 태그에 링크를 확인할 수 있었다. 한번 접근해보자. 흠 로봇신문 홈페이지에서 이미지를 가져온듯 하다.. 로봇이미지 & 로봇신문 .. 로봇을 공통점으로 생각하다 보니 웹과 관련된 문제여서 robots.txt가 생각이 났다. robots.txt에 접근해 보자. http://ctf.j0n9hyun.xyz:2020/robots.txt 접근하니 경로인 /robot_flag/가 나왔다. 저곳에 flag 값이 있을거 같다. 접근해보자. 이렇게 flag 값을 확인할 수 있었다! robots.txt 인터넷 검색엔진에서 보안이 필요한 내용을 검색엔진에 의해 검색등을 통한 노출이 되지 않도록 웹..