SPRING :: NOTE
[PHP] Directory Listing (디렉토리 리스팅) 본문
반응형
보통 서버설정에서 발생하는 취약점인데,
브라우징 하는 모든 파일을 보여주고,
파일 저장 및 열람이 가능하기 때문에 제2, 제3의 공격에도 이용 될 수 있습니다.
PHP상에서 폴더에있는 파일 리스트를 보여주는 다이렉트 리스팅입니다.
2차, 3차 해킹의 위험이있기 때문에 꼭 필요하신부분에 사용하셔야 합니다.
<?php
$path = "./datafile";
search_file ( $path );
function search_file($path) {
// 경로가 디렉토리인 경우
if (is_dir ( $path )) {
// 디렉토리 핸들러 생성
if ($dir = opendir ( $path )) {
// 디렉토리의 항목을 루프를 돌면서 구한다.
while ( ($file = readdir ( $dir )) !== false ) {
// 항목 이름이 "." 로 시작하지 않는다.
if ($file [0] != ".") {
$current_path = $path . "/" . $file;
// 현재 항목이 디렉토리일 경우 재귀 호출을 한다.
if (is_dir ( $current_path )) {
search_file ( $current_path );
} // 파일일 경우
else {
// 파일의 전체 경로 출력
echo $file. "</a----><br />";
}
}
}
} else {
echo "디렉토리 핸들러 생성 실패.
디렉토리에 권한이 제한 되어있거나 파일시스템 오류 입니다.";
}
} else
echo $path . " 는 디렉토리가 아닙니다.";
}
?>
반응형
'Development Language > WEB' 카테고리의 다른 글
[HTML5] 반응형 레이아웃 무료 공개 템플릿 (0) | 2019.08.18 |
---|---|
[MYSQL] Auto_increment 다음 값 가져오기 (0) | 2018.10.25 |
[PHP] 텔레그램 봇 메시지 생성하기 (0) | 2016.09.19 |
auto_increment 값 재설정 (0) | 2016.09.08 |
[PHP] XML -> JSON 변환 (0) | 2016.06.08 |
Comments