07_29필기.txt
2.71 KB · text/plain · 업로드 2026-07-29 17:41
사용자에게 변형된 주소 반환
alias = redirect
WAS 내부 자동 변환
RedirectMatch 301 ^/\ /dvwa/ (모듈 사용 X)
RewriteEngine On (기본 제공 모듈 사용(rewrite 모듈))
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^/?$ /dvwa/ [R=301,L]
nginx
80 -> 443
location redirect 적용으로 사용
proxy 설정을 통해 껍데기 WAS처럼 동작시킬 수 있음.
Vulnerability: File Inclusion
파일을 포함한다.
http://172.16.16.16/dvwa/vulnerabilities/fi/?page=include.php
http://172.16.16.16/dvwa/vulnerabilities/fi/?page=../../../../../../../../../../etc/passwd
파일 삽입 취약점
공격자가 악성 서버 스크립트를 서버에 전달, 해당 페이지를 통해 악성코드르 실행시킨다.
/bin/bash - 쉘
web shell
/var/www/html/upload/name.jsp or .php로 시스템에서 강제 실행 가능.
chroot : 현재 설정 페이지를 root로 인식하게 만들어 상위 디렉토리에 대한 접근을 제한한다.
악성 스크립트가 삽입되는 위치에 따라 LFI(local file inclusion)
RFI(Remote file inclusion)
RFI : 악성 코드 다운로드 유도 (유포 시나리오)
경로 제한 또는 파라미터 변조 등에 대한 필터링의 부재로 경로 접근, 파일 실행, 외부 파일 다운로드 등의 다양한 공격으로 활용 가능
GET으로 특정 파라미터를 이용하여 include 될 수 있는 페이지 코드 일부(취약한 대상) 유추 및 공격 수행
if(isset($_GET['submit'])){
$target=$_REQUEST['fname'];
~~~
// 외부로부터 입력 받은 $target 파라미터를 이용, include 수행
include($target);
~~~
}
이후 경로 유추, 추가 정보 획득 등을 통해 실제 file에 대한 URI로 파라미터를 이용한 include 수행
혹은 프록시 툴 등을 이용하여 User-Agent 헤더 필드에 <?php passthru('명령어'); ?>같은 명령어 수행 구문 삽입
<? ?> : fpm 서비스에 던지면 권한과 상관 없이 실행시킬 수 있다.
1) 관리자는 소스 코드 상 include, require 등의 구문/함수가 존재하는지 사전 검증해야 한다 --> (퍼징 : fuzzing)
사용자 입력값을 통한 원격 파일 접근을 차단해야함.
include : 오류 발생 시 에러 메시지를 출력 후, 스크립트를 계속해서 실행
require : 오류 발생 시 에러 메시지를 출력 후, 스크립트 실행 중지
eval
allocate
2) 단순 접근 차단 외, 경로 변경에 대한 방지(경로 이동 문자열 필터링) : .././.././
3) php.ini 설정상에
display_errors = Off로 설정해야 한다.
Hash-Identifier
https://raw.githubusercontent.com/Miserlou/Hash-Identifier/master/Hash_ID.py