Web Hacking 65

[Kali Linux] weeman 실습 - 피싱사이트 제작

기존에 서버가 구동되고 있다면 중지하기 $ sudo service apache2 stop 다음으로 weeman 다운받기 $ git clone https://github.com/samyoyo/weeman weeman을 다운받은 경로에서 weeman 폴더로 접속 후 weeman.py 파일 실 여기서 show 명령어를 입력하면 현재 설정되어 있는 url, 포트 등등이 나온다. 여기서 복제할 사이트 및 URL 주소, 포트 등등을 set 명령어로 설정해주자. (weeman ) : set url 복제할 사이트 주소 (weeman ) : set action_url 복제할 사이트에서 이동할 페이지 url 주소 (weeman ) : set port 포트번호 (weeman ) : run 이제 브라우저 창에 0.0.0.0을..

Web Hacking/Study 2024.01.26

[Kali Linux] HTTrack - 사이트 복제

아래 명령어로 httrack 설치 $ sudo apt install httrack httrack 명령으로 httrack 실행 프로젝트 이름 설정 - fake_yes24 카피할 웹사이트 주소 설정 Action에서 2번 선택 나머지 쭉 엔터 다음으로 카피된 파일을 DVWA 폴더로 옮겨주어야 한다. 파일은 기본적으로 생성되면 /root/websites 폴더 밑에 우리가 만든 fake_yes24 프로젝트 폴더가 생성되어 있을 것이다. 이를 /var/www/html/ 폴더로 옮겨주자. $ sudo mv /root/websites/fake_yes24 /var/www/html/ 이전에 선행으로 먼저 DVWA를 설치해야 하는데, 일단 DVWA가 설치되어 있다고 가정을 하고, apache2 서버를 시작한다. sudo s..

Web Hacking/Study 2024.01.26

[Kali Linux] DVWA 설치

Apache2 설치 sudo apt-get update # apache2 설치 sudo apt-get install apache2 #서버 시작 sudo service apache2 start #서버 중단 sudo service apache2 stop #서버 재시작 sudo service apache2 restart #OS 시작 시 자동 시작 sudo systemctl enable apache2 #OS 시작 시 자동 시작 해제 sudo systemctl disable apache2 기본적으로 apache2를 설치하였다면 다음 명령어 수행으로 서버 상태 확인 가능 $ systemctl start apache2 $ systemctl enable apache2 $ systemctl status apache2 데..

Web Hacking/Study 2024.01.26

경로 순회 취약점이란?

경로 순회란? 경로 순회는 디렉터리 순회라고도 하며, 이러한 취약점으로 인해 공격자는 응용 프로그램을 실행하는 서버에서 임의의 파일을 읽을 수 있음 어떤 경우에는 공격자가 서버의 임의 파일에 글을 써서 응용 프로그램 데이터나 동작을 수정하고 궁극적으로 서버를 완전히 제어할 수 있음 경로 순회에 취약한 애플리케이션은 /etc/passwd의 파일을 검색하기 위해 다음과 같은 URL을 요청할 수 있음 https://insecure-website.com/loadImage?filename=../../../etc/passwd 위 URL을 통해서 애플리케이션은 다음 파일 경로에 요청된다. /var/www/images/../../../etc/passwd Windows 운영체제에서는 ../와 ..\ 둘 다 유효한 디렉터..

Web Hacking/Study 2024.01.15

Authentication 취약점이란?

Authentication(인증)이란? 인증은 사용자나 클라이언트의 신원을 확인하는 프로세스이며 세 가지 주요 유형이 존재. 비밀번호나 보안 질문에 대한 답변 등 사용자가 알고 있는 정보를 "지식 요소"이라고 함 가지고 있는 것, 휴대폰이나 보안 토큰과 같은 물리적인 물체를 "소유 요인"이라고 함 하는 일이나 생체 인식, 행동 패턴 등을 "고유 요인"이라고 함 인증과 승인의 차이점 인증은 사용자가 자신이 주장하는 사람인지 확인하는 프로세스이며, 승인은 사용자가 어떤 작업을 수행할 수 있는지 여부를 확인하는 작업이 포함됨 Authentication 취약점이 발생하는 이유 인증 메커니즘이 무차별 대입 공격으로부터 적절하게 보호받지 못하기 때문 구현 시 논리 결함이나 잘못된 코딩으로 인해 공격자가 인증 메커니..

Web Hacking/Study 2024.01.15

UNION Based SQL Injection 정리

이번에는 UNION Based SQL Injection에 대해서 정리를 해보려고 한다. UNION Based SQL Injection이란 UNION Based SQL Injection은 질의한 SQL 쿼리의 결과가 응답에 포함될 때, UNION 또는 UNION ALL 을 이용해 원래의 SQL 쿼리에 민감한 데이터를 추출하는 SQL 쿼리를 더하여 공격하는 방법이다. UNION Based SQL Injection의 조건 통합되는 각 SQL 쿼리는 SELECT 절에서 동일한 갯수의 컬럼을 사용해야 한다. 원래 SQL 쿼리의 SELECT 절 컬럼의 자료형이 새로 삽입되는 쿼리의 SELECT절 컬럼의 자료형과 호환되어야 한다. UNION Based SQL Injection을 수행할 때 반환되는 컬럼 수 확인 방법..

Web Hacking/Study 2024.01.13

old-33 write-up

문제 정보 https://webhacking.kr/challenge/bonus-6/ https://webhacking.kr/challenge/bonus-6/ webhacking.kr 풀이 문제에 접속하면 가장 먼저 보이는 화면이다. Wrong이라고 잘못됐다고 알려준다. view-source를 눌러보자. view-source를 눌렀을 때 보이는 소스 코드는 아래와 같다. 해석해보면 get이라는 파라미터에 hehe라고 요청이 들어오면 어딘가로 보내준다. Challenge 33-1 view-source 다음과 같이 ?get=hehe 를 입력해주면 Next가 보인다. lv2.php로 넘어온 듯 하다. lv2.txt의 소스코드는 아래와 같다. 이번엔 post 요청을 통해서 post="hehe"를 입력해주고, AN..

old-36 write-up

문제 정보 https://webhacking.kr/challenge/bonus-8/ Challenge 36 webhacking.kr 풀이 문제에 접속하면 아래와 같은 내용이 보인다. 대충 index.php 파일을 수정하다 파워가 나가 소스 코드가 사라졌다는 내용이다. 페이지 소스 코드를 살펴봐도 별 다른게 보이지 않는다. 혹시 몰라 index.php 경로로 접속해도 동일하다. vi 편집기를 수정하다 모르고 오류가 날 경우 swp 파일이 생겨 이를 경로에 추가할 경우 파일이 자동으로 다운로드 받아진다. 주의할 점은 .index.php.swp 이며, index앞에 .을 하나 붙여야 정상적으로 파일이 다운로드 받아진다. 필자는 WSL로 리눅스 가상환경을 사용하고 있어서 이를 ubuntu 폴더에 넣어준 후 확인..

old-25 write-up

문제 정보 http://webhacking.kr:10001/ Challenge 25 webhacking.kr:10001 풀이 문제에 접속하면 file 파라미터로 hello를 받고 아래에는 644의 flag, hello, index의 php 파일과 그 아래는 hello word라는 hello의 파일을 읽어주는 것 같다. file 파라미터 값에 flag를 입력하니 FLAG is in the code 라는 문자열이 출력된다. flag가 코드 안에 있다고 한다. 여기서 어떻게 해야하는지 조금 삽질을 했다. 커맨드 인젝션이나 그런 것도 아니고 PHP Wrapper라는 개념이 있다고 한다. PHP Wrapper를 사용해서 이 문제를 풀 수 있는데, 이는 php에서 다른 파일을 동적으로 불러올 때 LFI 취약점이 발..

old-47 write-up

문제 정보 https://webhacking.kr/challenge/bonus-11/ Challenge 47 webhacking.kr 풀이 문제에 먼저 접속하면 다음과 같은 입력 폼이 존재한다. send 버튼을 한 번 눌러보면 다음과 같이 메일을 보냈다라는 내용이 출력된다. send를 계속 누르니 다음과 같이 10초 제한도 생긴다. Burp Suite로 패킷을 잡아봐도 별 다른게 안보인다. 어떤 문제인지 살짝 감이 안잡혔는데 이 문제는 SMTP에 관한 문제라고 한다. 이는 Mail Header Injection이라고 해서 Cc나 Bcc를 추가해 보내는 메일을 다른 메일 주소로 참조해 메일을 보낼 수 있는 취약점이라고 한다. Burp Suite를 이용해 Cc 헤더를 추가하고 내 이메일을 지정해준 후 Rep..