write-up GoN Open Qual CTF Colorfulmemo web문제중에 가장 solve가 많았던 문젠데 풀지 못했다. 여러기법들이 좀 짬뽕되어있다. 일단 웹사이트가 어떻게 돌아가도록 설계되었는지부터 파악해보면 memo를 작성할 수 있고 이 memo를 report하여 관리자측에서 확인하도록 되어있다. flag는 /flag_(암호) 에 위치한다. 결국 중요한점은 report를 할 수 있다는점인데 memo에 ssrf가 일어날수있는 코드를 전송하면 될것같... hardwrite-upGoNCTFGoNCTF Webhacking.kr write-up old-1~30 더 이상 할 수 있는게 없는데 아무것도 안돼서 굉장히 헤맸다. 코드를 살펴보면 'user' 'password' 쿠키가 주어지지 않으면 여러 암호화 과정을 거쳐서 생성되고 역으로 다시 복호화가 되는것을 알 수있다. 여러가지 sql injection 방법을 시도해보았는데 먹히는 것은 no=(1)or(id='admin') 같은 괄호활용 우회법만 가능했다. 구글링하여 해당 코드를 검색해보니 aaen... write-upwebhacking.krwebhacking.kr Webhacking.kr write-up old-31~61 맨 처음 값이 '.' 을 뺀 ip로 설정되고 이 값을 파라미터 이름으로 갖으며 또한 값이기도 한... and id='{$ 이 부분에 single quote가 있는데 뒤에 끝을 맺는 single quote가 없다. 그래서 그냥 column값을 no, id, pw로 예상하고 값을 예측하기로 했다. 바로 알 수 있는것은 down=url encode(flag.docx)를 넘겨주면 flag.docx가... write-upwebhacking.krwebhacking.kr webhacking.kr old-02 write-up 문제 첫 화면이다. restricted area라고 한다. 코드를 살펴보자. admin.php에 접근하면 궁디를 차버린단다... 가보자. 비밀번호를 요구한다. 우린 비밀번호가 없다. 근데 time 쿠키값이 있다. timestamp값이 적혀있는데 blind injection을 했더니 시간이 바뀌었다. 심지어 마지막은 01로 바뀌었다. 여러 방식으로 injection을 해보니 그냥 숫자만 입력해... webhacking.krwrite-upwebhacking.kr DiceCTF 2022 web/knock-knock diceCTF에 한번 참여해봤는데 단 한 문제도 풀지 못했다. 문제 수준이 보통이 아니다. 내가 많이 부족한걸 알지만 한 문제도 못풀 줄은 몰랐다... 다름 사람의 writeup을 봐도 처음 보는 개념이 많아서 일일이 내가 찾아봐야한다. 최선을 다해 모든 문제의 write-up을 써보고자 한다. 아... 난 왤케 못하는걸까.......... 첫 화면은 별거 없다. 대충 입력하고 create하... DiceCTFwrite-upDiceCTF webhacking.kr old-57 write-up 문제 첫 화면이다. 비밀 메세지를 보내는거같다. 아무거나 입력하고 제출하니 Done이 출력된다. 소스코드를 살펴보자. msg, se를 받아서 insert절을 수행한다. 그런데 문제는 insert만 있다는것이다. 입력한 데이터를 열어볼수 있는 방법이 없다. 즉, 입력만으로 저 $flag값을 알아내야한다. 여기서 if와 sleep을 사용해야겠다라는 생각을 떠올려내야한다. 필터링에 benchmar... hardwebhacking.krwrite-uphard KnightCTF 2022 Zero is not the limit write-up 문제 첫 화면이다. json 형식으로 유저들의 정보가 나와있다. 너무 밑도 끝도 없다. 힌트에는 /user/를 벗어나라?라고 되어있다. path traversal 문제라고 생각해서 별걸 다했다. 이렇게 입력하니 id에 해당하는 정보가 보여진다. 페이로드를 작성해서 1000번까지 뒤졌지만 아무것도 나오지 않았다. 생각보다 정말 많이 헤맸다. 정말로... 1000000000000000000000... KnightCTFwrite-upKnightCTF webhacking.kr old-20 write-up 문제 첫 화면이다. input들이 있고 인증문자가 있는것같다. 대충 입력하고 submit을 해보니 Too slow... 라는 문구를 띄우고 다시 돌아온다. 아마도 저 중앙 상단에 적혀있는 time limit 2 second가 있는걸 봐서는 입력을 2초안에 해야하는듯하다. 코드를 살펴보니 이상한점이 있다. submit을 자바스크립트 함수로 구현되어있다. 콘솔로 ck()를 입력해보니 예상대로 s... webhacking.krwrite-upwebhacking.kr webhacking.kr old-21 write-up 문제 첫 화면이다. 제목이 blind sql injection이라고 친절하게 알려주고있다. admin admin을 입력하면 login fail이 뜬다. guest guest를 입력하면 login success가 뜬다. 본격적으로 sql injection을 해보자. ' or 1=1#을 입력하니 wrong password가 뜨고 ' or 1=2#를 입력하니 login fail이 뜬다. 이 특징을... webhacking.krwrite-upwebhacking.kr webhacking.kr old-22 write-up 문제 첫 화면이다. 배점이 꽤나 있는 만큼 어려울 것이라 예상했지만 21번 문제랑 별 다를게 없었다. 여긴 오히려 친절하게 admin으로 login하고 column name이 id, pw 라는게 주어졌다. 이게 맞지... admin admin으로 로그인해보았지만 당연히 실패. guest guest로 join 한 다음 guest guest를 입력하니 갑자기 password hash값을 알려준다... webhacking.krwrite-upwebhacking.kr webhacking.kr old-23 write-up 문제 첫 화면이다. 상당히 간단하다. xss를 성공시켜라 그대로 입력해보자. 바로 no hack이 출력된다. 일단 특수문자 필터링부터 알아보자. 다행히도 특수기호 필터링은 없는듯하다. 그러면 뭐에 필터링이 걸리는걸까? 여러 시도후에 알아낸점은 문자가 2개이상 연속적으로 나오면 no hack을 출력했다. 꼭 script가 아니더라도 img도 안된다. 결국 한 글자씩 띄엄띄엄 입력하면서 컴퓨터가... webhacking.krwrite-upwebhacking.kr webhacking.kr old-43 write-up 또 파일 업로드 문제이다. 문구를 읽어보면 딱 봐도 웹쉘 업로드 시켜서 열어보는 문제다. test.txt를 업로드 해보니 wrong type 이란다. 아마도 파일 확장명을 제한해둔듯 하다. php%00, phphphp, png.php 등등 해봤지만 실패했다. 그러다가 알게된점은 png는 업로드가 된다는 점이다. 확장명이 아니라면 content type을 조작하면 되지 않을까? burp sui... webhacking.krwrite-upwebhacking.kr
GoN Open Qual CTF Colorfulmemo web문제중에 가장 solve가 많았던 문젠데 풀지 못했다. 여러기법들이 좀 짬뽕되어있다. 일단 웹사이트가 어떻게 돌아가도록 설계되었는지부터 파악해보면 memo를 작성할 수 있고 이 memo를 report하여 관리자측에서 확인하도록 되어있다. flag는 /flag_(암호) 에 위치한다. 결국 중요한점은 report를 할 수 있다는점인데 memo에 ssrf가 일어날수있는 코드를 전송하면 될것같... hardwrite-upGoNCTFGoNCTF Webhacking.kr write-up old-1~30 더 이상 할 수 있는게 없는데 아무것도 안돼서 굉장히 헤맸다. 코드를 살펴보면 'user' 'password' 쿠키가 주어지지 않으면 여러 암호화 과정을 거쳐서 생성되고 역으로 다시 복호화가 되는것을 알 수있다. 여러가지 sql injection 방법을 시도해보았는데 먹히는 것은 no=(1)or(id='admin') 같은 괄호활용 우회법만 가능했다. 구글링하여 해당 코드를 검색해보니 aaen... write-upwebhacking.krwebhacking.kr Webhacking.kr write-up old-31~61 맨 처음 값이 '.' 을 뺀 ip로 설정되고 이 값을 파라미터 이름으로 갖으며 또한 값이기도 한... and id='{$ 이 부분에 single quote가 있는데 뒤에 끝을 맺는 single quote가 없다. 그래서 그냥 column값을 no, id, pw로 예상하고 값을 예측하기로 했다. 바로 알 수 있는것은 down=url encode(flag.docx)를 넘겨주면 flag.docx가... write-upwebhacking.krwebhacking.kr webhacking.kr old-02 write-up 문제 첫 화면이다. restricted area라고 한다. 코드를 살펴보자. admin.php에 접근하면 궁디를 차버린단다... 가보자. 비밀번호를 요구한다. 우린 비밀번호가 없다. 근데 time 쿠키값이 있다. timestamp값이 적혀있는데 blind injection을 했더니 시간이 바뀌었다. 심지어 마지막은 01로 바뀌었다. 여러 방식으로 injection을 해보니 그냥 숫자만 입력해... webhacking.krwrite-upwebhacking.kr DiceCTF 2022 web/knock-knock diceCTF에 한번 참여해봤는데 단 한 문제도 풀지 못했다. 문제 수준이 보통이 아니다. 내가 많이 부족한걸 알지만 한 문제도 못풀 줄은 몰랐다... 다름 사람의 writeup을 봐도 처음 보는 개념이 많아서 일일이 내가 찾아봐야한다. 최선을 다해 모든 문제의 write-up을 써보고자 한다. 아... 난 왤케 못하는걸까.......... 첫 화면은 별거 없다. 대충 입력하고 create하... DiceCTFwrite-upDiceCTF webhacking.kr old-57 write-up 문제 첫 화면이다. 비밀 메세지를 보내는거같다. 아무거나 입력하고 제출하니 Done이 출력된다. 소스코드를 살펴보자. msg, se를 받아서 insert절을 수행한다. 그런데 문제는 insert만 있다는것이다. 입력한 데이터를 열어볼수 있는 방법이 없다. 즉, 입력만으로 저 $flag값을 알아내야한다. 여기서 if와 sleep을 사용해야겠다라는 생각을 떠올려내야한다. 필터링에 benchmar... hardwebhacking.krwrite-uphard KnightCTF 2022 Zero is not the limit write-up 문제 첫 화면이다. json 형식으로 유저들의 정보가 나와있다. 너무 밑도 끝도 없다. 힌트에는 /user/를 벗어나라?라고 되어있다. path traversal 문제라고 생각해서 별걸 다했다. 이렇게 입력하니 id에 해당하는 정보가 보여진다. 페이로드를 작성해서 1000번까지 뒤졌지만 아무것도 나오지 않았다. 생각보다 정말 많이 헤맸다. 정말로... 1000000000000000000000... KnightCTFwrite-upKnightCTF webhacking.kr old-20 write-up 문제 첫 화면이다. input들이 있고 인증문자가 있는것같다. 대충 입력하고 submit을 해보니 Too slow... 라는 문구를 띄우고 다시 돌아온다. 아마도 저 중앙 상단에 적혀있는 time limit 2 second가 있는걸 봐서는 입력을 2초안에 해야하는듯하다. 코드를 살펴보니 이상한점이 있다. submit을 자바스크립트 함수로 구현되어있다. 콘솔로 ck()를 입력해보니 예상대로 s... webhacking.krwrite-upwebhacking.kr webhacking.kr old-21 write-up 문제 첫 화면이다. 제목이 blind sql injection이라고 친절하게 알려주고있다. admin admin을 입력하면 login fail이 뜬다. guest guest를 입력하면 login success가 뜬다. 본격적으로 sql injection을 해보자. ' or 1=1#을 입력하니 wrong password가 뜨고 ' or 1=2#를 입력하니 login fail이 뜬다. 이 특징을... webhacking.krwrite-upwebhacking.kr webhacking.kr old-22 write-up 문제 첫 화면이다. 배점이 꽤나 있는 만큼 어려울 것이라 예상했지만 21번 문제랑 별 다를게 없었다. 여긴 오히려 친절하게 admin으로 login하고 column name이 id, pw 라는게 주어졌다. 이게 맞지... admin admin으로 로그인해보았지만 당연히 실패. guest guest로 join 한 다음 guest guest를 입력하니 갑자기 password hash값을 알려준다... webhacking.krwrite-upwebhacking.kr webhacking.kr old-23 write-up 문제 첫 화면이다. 상당히 간단하다. xss를 성공시켜라 그대로 입력해보자. 바로 no hack이 출력된다. 일단 특수문자 필터링부터 알아보자. 다행히도 특수기호 필터링은 없는듯하다. 그러면 뭐에 필터링이 걸리는걸까? 여러 시도후에 알아낸점은 문자가 2개이상 연속적으로 나오면 no hack을 출력했다. 꼭 script가 아니더라도 img도 안된다. 결국 한 글자씩 띄엄띄엄 입력하면서 컴퓨터가... webhacking.krwrite-upwebhacking.kr webhacking.kr old-43 write-up 또 파일 업로드 문제이다. 문구를 읽어보면 딱 봐도 웹쉘 업로드 시켜서 열어보는 문제다. test.txt를 업로드 해보니 wrong type 이란다. 아마도 파일 확장명을 제한해둔듯 하다. php%00, phphphp, png.php 등등 해봤지만 실패했다. 그러다가 알게된점은 png는 업로드가 된다는 점이다. 확장명이 아니라면 content type을 조작하면 되지 않을까? burp sui... webhacking.krwrite-upwebhacking.kr