Wargame Write-Up/HackCTF69 [HackCTF] (Web) Time 풀이 접속하면 나타나는 코드다. Time값을 가져와 숫자인지 검사 후, 5184000~7776000 사이에있는지 검사한다. 그리고 time값 만큼 sleep 한 뒤 flag를 출력해준다. 5184000초면 약 2달이란 시간인데, 그만큼 기다릴 수 없으니 다른 방법을 찾자. 2020/03/09 - [Wargame Write-Up/HackCTF] - [HackCTF] (Web) 마법봉 풀이 [HackCTF] (Web) 마법봉 풀이 문제접속하면, 삐애로가 마법봉을 꺼내려하는사진이있고, 소스코드보기가 있다. 소스코드를 보면 md5("240610708") 값과 sha1("input") 값이 같을때 flag를 출력해준다. 0e4620~~(숫자) 형식을 취하고있다. (참.. snwo.tistory.com 저번에 나온 ph.. 2020. 3. 10. [HackCTF] (Web) 마법봉 풀이 문제접속하면, 삐애로가 마법봉을 꺼내려하는사진이있고, 소스코드보기가 있다. 소스코드를 보면 md5("240610708") 값과 sha1("input") 값이 같을때 flag를 출력해준다. 0e4620~~(숫자) 형식을 취하고있다. (참고로 Xe(+)Y는 X * 10^Y이다.) (ex : 3e2 혹은 3e+2 = 3 * 10^2 = 300 ) (주로 계산기에서 너무큰 결과가 나오면 이런식으로 표시된다.) 이런설명을 한 이유는 0e~~ 는 결국 0 이라는걸 알수있다. php에서는 Auto type casting (type juggling)을 지원한다. 그리고, string < float < int 순으로 자료형을 선호한다. 0e4620~ == 0e~~ 를 비교할때, 둘 다 문자열이지만, float형식으로 바.. 2020. 3. 9. [HackCTF] (Web) Login 문제 로그인창이다. 특별한건 없고 소스코드를 보자 DB에서 아이디와 sha256로 암호화한 비밀번호가 맞으면 결과를 가져오고, Session id를 DB쿼리 결과로 바꿔서 welcome.php로 연결해준다. 만약에 직접 welcome.php로 들어가면 No login이 뜬다. 그렇다면 아이디와 비밀번호를 맞출수는없고, Sql 문이 참이되게해서 welcome.php로 이동하자 id='$id' and pw='$pw' id를 ' or 1=1# 로 넣어주면, id='' or 1=1# 'and pw='$pw' id 닫은 따옴표 다음은 주석처리가 되어 Sql문이 참이된다. 그러면 테이블에서 아이디를 가져와 Welcome.php 로 들어가서 FLAG를 볼 수 있다. 2020. 3. 9. [HackCTF] (Reversing) Keygen 풀이 (No ida pro , handray) 문제를 다운받고 ida로 열어보자 [main] 0x41 (61) 만큼 입력을 받고, check_key로 확인한다음 맞으면 flag파일을 열어서 출력해준다. [cheak_key] 입력값이 10이상, 64이하 이면, 입력값을 encoding한다음 OO]oUU2U m[] var_C : 입력값의 길이 --> len var_10 : iterator --> i var_11 : 0x48 --> v 입력값 : s[] 0xEA0EA0EB : v2 저는 ida pro가없으니 이제부터 encoding루틴을 직접 handray해보겠습니다. 루틴은 4단계로 나눠서 설명해드릴께요 [ 반복문 ] while ( i < len ) [ First ] E1 = (s[i] + 0xC ) * v + 0x11 [ Second ] E2 = ( .. 2020. 3. 6. 이전 1 ··· 11 12 13 14 15 16 17 18 다음