일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Layered Architecture
- 방명록 만들기
- mysql
- Forensic 절차
- restapi
- frontend
- spring
- 메모리 포랜식
- 인턴 후기
- 동읍면 DB
- PyAmdecoder
- 3단계 지역 DB
- SessionAttribute
- DBMS
- riceteacatpanda
- 행정지역 DB
- reversing.kr
- 네이버 인턴
- webhacking 처음
- Database
- 소프트웨어 개발보안 경진대회
- ㅁㅇㅂ??ㅇㅈㄷ ㅎㅇㅌ...
- react
- 인턴 지원
- JSTL
- Django
- 정보보호병 후기
- jsp
- 소개딩
- EER
- Today
- Total
목록WEB_HACKING/xcz.kr (4)
웹찢남
이번문제도 IU문제다! 해당사이트에서 id를 식별 할 수 있는 decryptUID라는 함수를 가진 php를 제공한다. id명과 ip로 encrypt를 해 쿠키에 값을 넣어 사용자를 인증하는 거같아 encrypt코드를 짜기로했다... 다음과 같이 코드를 짜보긴했는데 테스트도 하지못했다... 뭐가 문젠지모르겠는데 해당사이트에서도 기존에 있는 함수가 안돌아가고 localhost에서 php를 만들어 올려도 안돌아간다... 다시한번 생각해보고 추후에 다시 풀어보기로하고... 바이바이...
이 문제 같은 경우 운이 좋아서 빨리 풀었다. 소스코드를 보면 a로 값을 받아오는데 ??로 값이 숨겨있다. 일단 ?를 0으로 바꿔 값을 보내봤더니 문제가 풀렸다 ㅎ..... 그 후에 찾아보니 php는 큰 값을 기준으로 작은 값들은 비교를 하지 않는다고 한다. 그래서 ?를 0으로 바꿔 인증을 해도 if문을 통과한다.
위는 web 2번이다 title답게 php를 난독화 해놨다.. 어우.... 일단 아래와같이 hex 값을 바꿔보자... 그래도 어우... 아래는 코드전체가 아님에도 겁나 길다.. 위의 코드를 보면 어지럽다... 그래서 이쁘게 정리를 해봤다. 정리를 해본결과 value를 -를 통해 쪼개고 그문자는 a-z,A-Z,0-9여야 했고 그 문자를 ord 함수를 통해 변환한다... 그리고 대망의 key를 얻기위한 4단 if문.. 위와같은 방법으로 값을 넣으면 CLEAR!!!! 이번문제는 너무 더러워서 짜증이 났다..ㅎㅎ..
뭘 해야할지 몰라서 일단 새로운 문제 풀이 사이트를 찾아봤다! xcz.kr의 첫번째 웹 문제다. 위는 해당 페이지의 소스인데 1. 쿠키(c) get(g) post(p)의 인자값이 들어있어야 wrong이 안뜬다. 2. test function에서 값을 비교하는데 쿠키와 get / post 두개에 해당 값을 넣어야한다 3. get,cookie에는 givemepassword post에는 keyplz!가 들어있어야한다. 이렇게 payload를 보내면되는데 cookie는 f12로 추가하면되고 post에는 아래와같이 form을 만들어 입력해주면 CLEAR!!!