일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- RCE
- 해외 워게임
- backdoorctf writeup
- 해킹캠프
- webhacking
- XSS-game
- 해외 wargame
- Web Hacking
- wargame.kr
- CTF
- WarGame
- Web
- hacking
- hackingcamp ctf writeup
- Hacker.org
- CVE
- 웹해킹
- WEB-hacking
- 웹 해킹
- 해킹캠프 ctf
- hackingcamp
- cve 분석
- writeup
- thinkPHP
- backdoorctf 2023
- php
- backdoorctf 2023 web
- XSS
- backdoorctf 2023 web Unintelligible
- hackctf
- Today
- Total
목록hacking (17)
<OOO>
웹 서버 로그에 이런게 찍혀있다. /vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php PHPUnit RCE 취약점이다. 영향을 받는 버전대는 4.8.28 이전의 버전 혹은 5.6.3 이전의 5.x 에서 발생한다. vendor 디렉토리는 패키지가 저장되는 폴더이며 composer를 통해 설치되는 패키지들을 저장한다. composer는 php의 의존성 관리 도구이다. POST 방식으로 날아가며 상단에는 /vendor/phpunit ~~~ 으로 넣고 body에 라는 php 코드를 같이 사용하는 것 같다. (test는 예시) 이 취약점은 eval-stdin.php의 페이지 요청이 되면서 제대로 된 인증이 존재하지 않아 발생하는 취약점이다. 참고 cve.mitre.org/..
웹 서버를 열어놨더니 이상한 로그가 찍혀있어 리서치용으로 포스터를 작성하고자 한다. ThinkPHP 란? 중국에서 개발한 PHP 프레임 워크. 이 취약점이 발표될 당시에 중국에선 4만여개의 사이트들이 ThinkPHP를 사용했었는데 해킹 사건이 많이 발생했다. 한국에도 ThinkPHP를 사용하긴 한다.(극소수) 영향 받는 버전 : 5.0.20,5.1.30 cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20062 이 취약점을 사용하면 RCE, 즉 원격명령 실행이 가능하다. 해당 exploit 코드는 다음과 같다. /index.php?s=/Index/\\think\\app/invokefunction&function=call_user_func_array&vars[0]=md..
adworld.xctf.org.cn/ https://adworld.xctf.org.cn/ adworld.xctf.org.cn 국내 워게임은 많이 들어봤지만 해외 워게임은 그렇게 알려져 있지 않아서 추천을 하고자 글을 쓰게 되었다. (이시국에 중국...) 위에 있는 Quests를 누르면 이런 것들이 보일텐데 분야도 생각보다 괜찮게 있어서 좋은것 같다. 방어자 입장에서 공격, 해커의 입장에서 공격으로 나누어져 있는데 웹 문제도 상당히 많아서 좋다. 이 플랫폼을 기반으로 한 CTF도 나온다.
adworld.xctf.org.cn/ https://adworld.xctf.org.cn/ adworld.xctf.org.cn 중국에서 만든 CTF 사이트인데 생각보다 잘 만들어서 괜찮은것같다. 문제로 들어가면 이런 index.php가 나올텐데 겉으로 보면 뭘 공격해야할지, 어떤 명령을 삽입을 해서 rce가 되어야 하는지 잘 감도 안잡힐 것이다. ThinkPHP는 중국에서 만든 프로그램인데 쉽고 빠른 개발을 위해 제작했다고 한다. 근데 이 프로그램에서 rce가 터지는 버전대가 있다. lopicit.tistory.com/360 취약점) ThinkPHP 원격 코드 실행 취약점 POC (CVE-2018-20062) lopicit.tistory.com 지금 쓰일 사진들은 출저가 저기 위에 있는 사이트다. 이런 식..
flag.php 에서 you are not local 이라는 문장이 보인다. 밑에 링크를 클릭하면 user를 search 할 수 있는 칸이 나온다. 페이지 소스를 보면 op.gg에 내가 입력한 user 값 대로 검색을 하는 것 같다. 이 문제에서 요구하는 취약점은 SSRF 이다. SSRF이란 Server-Side Request Forgery의 약자로 Server Side에서 이루어지는 요청을 변조해 해커가 의도한 서버로 요청을 가게 하거나 요청 자체를 변경 할 수 있는 공격을 말한다. SSRF는 @를 이용하여 취약점을 발생시킨다. 페이지 소스를 보면 hidden으로 url을 전송시키는 것을 확인할 수 있다. @로 우회를 할 수 있는데, hidden 속성이 있는 value 값에서 맨 앞에 ? 를 넣고, 뒤..
제목 그대로 쿠키에 뭐가 있는지 살펴봤는데 base64로 인코딩이 되어 있는 문자열을 발견했다. base64로 인코딩이 3번 되어있는데, 디코딩을 하면 이렇게 id와 type이 뜬다. 여기서 id를 1로 바꾸고, type을 admin으로 바꾼 후 base64로 인코딩을 3번해준다. 그리고 새로고침을 하면 패스워드가 틀렸다고 한다. 이때는 프록시를 사용하여 캡처 한 후 strcmp을 우회 해주면 풀린다. PassAdmin 부분에 strcmp를 우회 하는 방식으로 []를 추가하면 풀린다.
이 셋 중에 하나를 누르면 랜덤으로 NPC가 하나를 골라 승부하는 게임이다. 내가 져도, 이겨도 flag를 뱉지 않는다. 이게 뭔지 싶어서 삽질을 좀 오래 했던 것 같다. 그러나, 우측 상단에 있는 설정 부분을 누르면 이름과 사진을 올릴 수 있게끔 만들어 놨다. 여기서 파일 업로드 취약점이 터지는것 같아 메모장으로 php 파일을 만들어 올려보았으나, 필터링을 하였다. 확장자 이름을 .jpg로 해도, 필터링이 되는걸로 보아 다른 방법으로 필터링을 하는 것임을 느낄 수 있다. 파일 시그니처를 PNG 시그니처로 바꾼 다음 올리면 어떻게 될까 싶어 올려보니 성공을 하였다. 파일 시그니처를 잘 모르겠으면, http://forensic-proof.com/archives/323 이 주소를 참고하자. 이렇게 저장을 하..
내 IP가 나오면서 인증되지 않은 IP 주소라고 한다. 그리고 머릿말에 빨간색으로 강조를 하는걸로 보아 localhost로 인식을 하게끔 만들면 되는것 같다. 헤더에 뭐를 하면 될것 같다는 생각에 버프 슈트 켜서 살펴보았으나... 아무것도 없었다. 근데 헤더에서 설정할 수 있는게 X-Forwarded-For 라는 것이 있는데, 이건 client IP를 식별하기 위한 표준이라고 한다. http://blog.plura.io/?p=6597 보충 설명은 이 사이트에서 들어가서 보면 된다. 프록시로 잡아서 X-forwarded-for 부분에 127.0.0.1을 넣어주면 풀린다.