본문 바로가기

웹해킹17

[Dreamhack] simple-web-request https://dreamhack.io/wargame/challenges/830 🌱 simple-web-request Description STEP 1~2를 거쳐 FLAG 페이지에 도달하면 플래그가 출력됩니다. 모든 단계를 통과하여 플래그를 획득하세요. 플래그는 flag.txt 파일과 FLAG 변수에 있습니다. 플래그 형식은 DH{...} 입니다. 📜 dreamhack.io 2단계를 거쳐서 플래그를 획득해야 하는 문제다. STEP 1에 들어가면 param 값과 param2를 입력해야 하는 것으로 보인다. 문제 파일에서 app.py를 확인해보니 step1() 함수에 param 갑소가 param2 값이 아예 공개돼 있었다. 해당 값들을 입력하니 STEP 2로 넘어갔다. STEP 2에서도 param 값과 par.. 2023. 9. 16.
[Dreamhack] phpreg https://dreamhack.io/wargame/challenges/873 phpreg Description php로 작성된 페이지입니다. 알맞은 Nickname과 Password를 입력하면 Step 2로 넘어갈 수 있습니다. Step 2에서 system() 함수를 이용하여 플래그를 획득하세요. 플래그는 ../dream/flag.txt에 위치합니 dreamhack.io php로 작성된 페이지로 2단계에 걸쳐서 푸는 문제다. 플래그는 ../dream/flag.txt에 있다고 한다. 가상머신에 접속하면 이름과 패스워드를 제출하는 입력 란이 있다. 혹시나 해서 admin/admin을 입력해봤는데 아니라고 했다. :( 주어진 문제 파일 중 index.php에는 얻을 수 있는 정보가 없었다. 그래서 step2.. 2023. 9. 13.
[Dreamhack] xss-2 https://dreamhack.io/wargame/challenges/268 xss-2 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. XSS 취약점을 이용해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 플래그 형식은 DH{...} 입니다. Reference ClientSide: dreamhack.io XSS 취약점을 이용해 플래그를 획득하는 문제이다. https://unxrl23.tistory.com/264 [Dreamhack] xss-1 https://dreamhack.io/wargame/challenges/28 xss-1 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. XSS 취약점을 이용해 플래그를 획득하세요. 플래그는 flag... 2023. 5. 23.
[Dreamhack] xss-1 https://dreamhack.io/wargame/challenges/28 xss-1 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. XSS 취약점을 이용해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 플래그 형식은 DH{...} 입니다. Reference Client-side dreamhack.io XSS 취약점을 이용해서 플래그를 획득하는 문제다. 플래그는 flag.txt, FLAG 변수에 있다고 한다. 접속 정보에 들어가면 이런 화면이 나온다. 접속 가능한 페이지가 3가지이다. vuln(xss) 페이지는 param 변수에 들어가는 스크립트 코드가 주소창에 그대로 나타나는 걸 볼 수 있다. 그리고 스크립트 코드를 return하므로 xss 공격이 성공할.. 2023. 5. 3.
[Dreamhack] command-injection-1 https://dreamhack.io/wargame/challenges/44 command-injection-1 특정 Host에 ping 패킷을 보내는 서비스입니다. Command Injection을 통해 플래그를 획득하세요. 플래그는 flag.py에 있습니다. Reference Introduction of Webhacking dreamhack.io Command Injection을 통해 플래그를 획득하는 문제이다. 플래그는 flag.py에 있다고 한다. 접속 정보에 들어가 보면 ping을 보내는 사이트임을 알 수 있다. IP 주소를 입력하면 서버가 ping을 보내준다. 문제에서 flag.py에 flag가 있다고 했으므로 cat 명령을 사용하여 파일을 읽어오려고 했다. 8.8.8.8; cat flag.p.. 2023. 5. 2.
[Dreamhack] error based sql injection https://dreamhack.io/wargame/challenges/412 error based sql injection Description Simple Error Based SQL Injection ! dreamhack.io 문제에 접속해서 값을 입력해 보면 검색 결과는 보여주지 않고 입력 결과만 보여준다. 데이터베이스 관련 코드인 init.sql을 살펴 보면 user table에 FLAG가 저장되어 있다. app.py를 살펴 보면 쿼리에 이용자의 입력 값인 uid를 그대로 사용한다. extractvalue() 함수를 활용하여 error based SQL Injection 공격을 해야 한다. extractvalue() 함수를 써서 에러를 발생시킨 후에 에러 메시지에 함수를 포함시켜서 user 테이.. 2023. 5. 2.
[Dreamhack] sql injection bypass WAF https://dreamhack.io/wargame/challenges/415 sql injection bypass WAF Description Exercise: SQL Injection Bypass WAF에서 실습하는 문제입니다. dreamhack.io SQL Injection Bypass WAF에서 실습하는 문제이다. 접속 정보에 들어가면 이런 화면이 뜬다. 임의로 guest를 입력했더니 url과 화면에 그대로 입력한 값이 보였다. 그리고 admin을 입력했더니 필터링에 걸려서 이런 문자열이 떴다. 필터링을 우회해야 되는 문제이므로 우선 코드를 확인하러 갔다. 문제 파일의 app.py를 봤더니 주요 키워드들이 모두 필터링 되어 있는 것을 확인할 수 있었다. 키워드 필터링을 회피하고 False를 리턴해.. 2023. 5. 2.
[Dreamhack] session-basic https://dreamhack.io/wargame/challenges/409 session-basic Description 쿠키와 세션으로 인증 상태를 관리하는 간단한 로그인 서비스입니다. admin 계정으로 로그인에 성공하면 플래그를 획득할 수 있습니다. 플래그 형식은 DH{...} 입니다. Reference Background: Cook dreamhack.io 쿠키와 세션으로 인증 상태를 관리하는 간단한 로그인 서비스이다. admin 계정으로 로그인에 성공하면 플래그를 획득할 수 있다고 한다. 접속 정보로 들어가서 아무 정보로 로그인을 시도하면 찾을 수 없는 유저라는 메시지가 뜬다. 접속 정보에서는 더이상 얻을 수 있는 정보가 없어서 문제 파일을 확인했다. admin의 password가 FLAG 값.. 2023. 4. 4.
[Dreamhack] [wargame.kr] login filtering https://dreamhack.io/wargame/challenges/336 [wargame.kr] login filtering Description text I have accounts. but, it's blocked. can you login bypass filtering? dreamhack.io I have accounts. but, it's blocked. can you login bypass filtering? 계정이 있지만 블락됐다고 한다... 내가 로그인 할 수 있게 필터링 해줘야 하는 문제이다. 접속 정보로 가서 아무 값이나 입력해 로그인해봤다. 역시나 틀렸다고 한다. get source 버튼을 클릭해 소스 코드를 확인했다. 맨 마지막 부분에서 계정 정보를 준다. 주어진 계정 정보 두 .. 2023. 4. 4.
[Dreamhack] Carve Party https://dreamhack.io/wargame/challenges/96 Carve Party Description 할로윈 파티를 기념하기 위해 호박을 준비했습니다! 호박을 10000번 클릭하고 플래그를 획득하세요! dreamhack.io 문제 파일을 다운로드 해서 열어 본 페이지에는 이런 호박이 뜬다. 만 번을 클릭하라고 한다. 클릭할 때마다 수가 줄어들고 호박에 얼굴이 생긴다. 자동 클릭 프로그램을 사용해서 만 번을 클릭했더니 호박 얼굴이 완성됐다. 그래서 자동 클릭을 개발자 도구에서 해 봤다. 개발자 도구에서 코드를 보면 클릭하는 기능은 위와 같은 코드이다. 코드를 보고 $('#jack-target').click();을 만 번 실행하면 문제가 해결될 것이라 생각했다. for(var i = 0; .. 2023. 4. 4.
[Dreamhack] file-download-1 https://dreamhack.io/wargame/challenges/37/ file-download-1 File Download 취약점이 존재하는 웹 서비스입니다. flag.py를 다운로드 받으면 플래그를 획득할 수 있습니다. Reference Introduction of Webhacking dreamhack.io 이 문제는 File Download 취약점이 존재하는 웹 서비스이다. flag.py를 다운로드 받으면 플래그를 획득할 수 있다고 한다. 접속 정보를 통해 문제 사이트에 접속하면 이런 화면을 볼 수 있다. flag.py를 다운 받기 위해 임의로 값을 입력해 봤다. flag.py를 클릭하면 이런 화면이 나온다. url을 보면 read 함수에서 name=flag.py인 것을 다운한다. 파일 다운.. 2023. 3. 28.
PHP&SQL Injection 실습 PHP vulnerability (PHP 취약점 공격) - 메타스플로잇 ip 주소를 리눅스 인터넷 창에 입력한 후, phpMyAdmin에 들어간다. - url에서 맨 끝에 ?-s를 추가면 php 소스코드가 보인다. (취약점) - msfconsole 실행 - search php_cgi 확인 - show options 명령어 실행 - 메타스플로잇 ip로 rhosts 설정 - payloads 확인 - payloads 설정, 옵션 확인 - 칼리리눅스 ip를 lhost로 설정 후 실행 SQL Injection (SQL 인젝션 실습) - DVWA에 들어가서 로그인 한다. - DWMA Security를 low로 변경 후에 Submit - SQL Injection - 1을 넣었을 때 - 2를 넣었을 때 - 1'를 넣었.. 2022. 11. 13.
메타스플로잇 실습 1. DB에 연결 2. DB 초기화 3. 메타스플로잇 실행 1) metasploit v-6.2.9-dev 현재 버전과 모듈의 개수들을 알려줌 ​2) exploits 실제로 취약점을 공격하여 해킹을 시도하는 공격 모듈 3) auxiliary 보조모듈 주로 스캐닝을 위한 용도로 사용 payload를 실행하지 않음 ​4) payload exploit이 성공이 되면 실행함 ​5) encoders payload를 타겟까지 제대로 전달하기 위한 모듈 ​6) nops nop이라고 하는 어셈블리 명령어를 이용해 payload 크기를 일정하게 유지시켜주는 모듈 7) db status db가 연결이 잘 되었는지 확인 8) help 각종 명령어들에 대한 설명 4. 메타스플로잇 실행 후, 메타스플로잇 ip 확인 5. 메타스플.. 2022. 11. 13.
[Load of SQL Injection] orc https://los.rubiya.kr/gate.php https://los.rubiya.kr/gate.php los.rubiya.kr 풀이 참고 링크: https://koun9hwan.github.io/2021/09/28/2021-09-28-Lord_of_SQLInjection_4_orc/ https://devdori.tistory.com/22 query : select id from prob_orc where id='admin' and pw='' -> query에서 id는 admin으로 고정되어 있고, pw는 입력 값을 받고 있다. $query = "select id from prob_orc where id='admin' and pw='{$_GET[pw]}'"; -> prob_orc 테이블에서 id가.. 2022. 10. 31.
[Load of SQL Injection] goblin https://los.rubiya.kr/gate.php https://los.rubiya.kr/gate.php los.rubiya.kr 풀이 참고 링크: https://mandu-mandu.tistory.com/301 query : select id from prob_goblin where id='guest' and no= -> query에서 id는 guest로 고정되어 있고, no는 입력 값을 받고 있다. no를 통해 공격해야 되는 것 같다. if(preg_match('/\'|\"|\`/i', $_GET[no])) exit("No Quotes ~_~"); -> no는 '가 필터링 된다. if($result['id'] == 'admin') solve("goblin"); -> id 값은 admin이어야 한.. 2022. 10. 31.