전체 글 72

Hacking Camp CTF 2021 write up

web, mobile만 1. World Wide Web World Wide Web 플래그 경로는 /tmp/flag 에 있습니다. https://steemit.com/kr/@huti/phpmyadmin-local-file-inclusion-cve-2018-12613 phpmyadmin Local File Inclusion 취약점(CVE-2018-12613) 재분석 — Steemit 악의적인 사용을 금합니다. 법적 책임은 본인에게 있습니다. 무단 도용/복제를 급합니다. 본 글의 저작권은 huti에게 있습니다. URL에 파일 경로를 포함하면, 사용자가 웹서버에 있는 파일을 열람 steemit.com phpMyAdmin에서 target 파라미터로 전달되는 값에 대해 유효성 검사를 하고 있으나 이를 우회하여 임의..

wargame 2021.08.18

[Burp Suite] 업데이트 후 Render 기능 사용 시 Embedded browser initialization failed 에러

버프스위트 커뮤니티를 쓰다 어느 순간 Render 기능을 사용할 수 없게 되었다. 오른쪽 상단에 업데이트 메시지창을 보고 업데이트 했던 게 의심스럽다. 증상은 Embedded browser initialization failed 라는 에러 메시지가 출력된다. 자세한 에러 메시지가 필요할 듯 하다. Help > Embedded Browser Health Check 에서 확인 가능하다. manifest.properties 파일이 없다고 한다. 그래서 해당 디렉터리로 이동하려고 했더니 이동이 안된다. 뭔가 싶어 디렉터리를 하나하나 따라가니 manifest.properties 파일이 있는 디렉터리 명이 변경되었다. 90.0.4430.212을 91.0.4472.101로 변경해준 뒤 버프스위트를 재실행했다. 디렉터..

Web,Mobile/Tool 2021.06.23

[Python] requests 라이브러리 프록시 툴로 패킷 캡쳐하기

Python version 3.9.4 Package 'requests' version 2.25.1 예전엔 알아서 패킷을 잡았던 거 같은데 최근에 다시 돌리려 하니 프록시 설정을 킨 상태에서 요청하면 에러가 발생한다. 기존 GET 방식으로 요청 보내는 코드 import requests URL = 'https://limelee.xyz' res = requests.get(URL) print(res) 실행 시 이렇게 오류가 난다. 그래서 proxies 옵션을 추가해주었다. import requests proxies = {'http' : 'http://127.0.0.1:8080', 'https' : 'http://127.0.0.1:8080'} URL = 'https://limelee.xyz' res = reque..

Web,Mobile/Tool 2021.04.19

[apktool] appguard 난독화 앱 디컴파일 및 리패키징 오류 해결

디컴파일 오류 : brut.directory.DirectoryException: Error copying file: assets java -jar apktool_2.5.0.jar d test.apk -o test I: Using Apktool 2.5.0 on test.apk I: Loading resource table... I: Decoding AndroidManifest.xml with resources... I: Loading resource table from file: C:\Users\home\AppData\Local\apktool\framework\1.apk I: Regular manifest package... I: Decoding file-resources... I: Decoding val..

Web,Mobile/Tool 2021.03.11

Raspberry Pi 3로 WOL 패킷 전송

하루종일 데탑을 켜놓기엔 전기세 아깝고 하루종일 돌아가고 있는 라즈베리 파이 서버를 이용해서 WOL을 구현하면 어떨까 싶어 환경을 만들었다. 참고로 라즈베리파이에 외부접근이 이미 설정되어 있는 전제 하에 작성된 글이다. 오직 WOL을 위해 라즈베리파이를 사서 OS도 올리고 포트포워딩도해주고 원격접속 설정도 해줄 거라면 iptime 공유기나 팀뷰어 등 유명한 기업들에서 이런 기능을 이미 지원하고 있기 때문에 그 쪽을 이용하는 것이 용이하다. WOL은 Wake On Lan으로 특수한 매직 패킷으로 원격에서 부팅하는 기술이다. 워낙 유명한 기술이기 때문에 팀뷰어나 iptime에서 기능을 다 지원하고 있다. 팀뷰어와 iptime이 지원하는 WOL의 형태는 다음과 같다. 팀뷰어의 경우 외부의 어느 포트와 원격 부..

Raspberry Pi 2019.12.24

Webhacking.kr(old) 52번

리뉴얼 전의 웹해킹 문제를 풀어본 사람이라면 리뉴얼 전 문제에서 어느정도 힌트를 찾을 수 있다. 이전 문제는 입력 벡터 하나에 파라미터로 헤더에 특정 값만 삽입하면 클리어되었기 때문에 해당 문제의 기술이 언제 쓰이는가에 대한 시나리오 적인 요소를 추가해서 리뉴얼한게 의도가 아닌가 싶다. admin 페이지와 proxy 페이지 가 존재하고 admin 페이지에서 인증 로그인을 실패했을 때 admin페이지의 소스코드 URL을 볼 수 있다. 소스코드는 아래와 같다. view-source 세션이 존재할 때와 존재하지 않을 때, 두 부분으로 나눠서 분석한다. 먼저 세션이 존재하지 않을 때에 소스 if($_SERVER['PHP_AUTH_USER']){ $id = $_SERVER['PHP_AUTH_USER']; $pw ..

Webhacking.kr(old) 4번

웹케알이 리뉴얼 되었다. 너무 옛날 버전의 취약점은 약간씩 고쳐지고 문제의도를 잘 모르겠는 문제들도 개편되었다. 4번도 이에 해당된다. 기존문제는 base64로 인코딩된 값을 풀어 나오는 sha1의 값을 rainbow 테이블로 찾아내면 되는 문제였다. sha1의 레인보우 테이블은 웹에서 지원하는 경우가 많기 때문에 쉽게 찾을 수 있었지만, 리뉴얼 되면서 의도된 바는 레인보우 테이블이 어떻게 만들어지는 지에 대한 원리를 직접 느껴보길 바라는 의도인 것으로 보인다. 바뀐 문제를 풀어보자. Password [view-source] $hash = rand(10000000,99999999)."salt_for_you"; 10000000에서 99999999 사이의 숫자를 하나 뽑아 salt_for_you와 합친다. ..