개발 Q&A

제목 표준프레임워크에서 제공하는 디렉터리 및 파일 노출 취약점에 대한 코드상에서 조치방법
카테고리 PHP
글쓴이 정수리 작성시각 2025/05/09 13:48:00
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 336   RSS

웹취약점조치 관련하여 메일이 왔는데

 

웹취약점 보고서를 확인해보니

 

'표준프레임워크에서 제공하는 디렉터리 및 파일 노출 취약점 -1' 이라는 항목으로  취약점이 잡혔더라구요

 

점검 경로가 http://웹사이트주소/#/auth/login 이길래 접속해보니

 

웹사이트 메인페이지로 접속이 되었습니다. 프로그램 소스 코드경로상에 auth같은 폴더나 파일은 없습니다.

 

구글링을 통해 '위치공개' 취약점 관련해서 코드상에서 처리하는 방법에 대한 자료는 없더라구요.

 

혹시나해서 CI코드상에서 위치 공개 취약점에 대한 조치 방법에 대해 아시는 선배님들이 계실까해서 글 올렸습니다.

 

프로그램 CI버전은 코드이그나이터3입니다.

 이전글 ci4 (4.6) 설치했는데 동작을 안합니다. (2)

댓글

변종원(웅파) / 2025/05/12 12:32:39 / 추천 0

어떻게 설정하신지 모르겠지만 Auth 컨트롤러가 없으면 에러가 나야 정상입니다.

라우터 파일이던 설정파일인던 어디선가 처리를 해주고 있을 겁니다.

정수리 / 2025/05/20 11:09:58 / 추천 0

@웅파

답변감사합니다. 이제 확인했네요

말씀하신것 처럼 url에   http://웹사이트주소/auth/login 입력하면 정상적으로 없는 페이지라고 에러페이지 출력이 됩니다.

문제는 중간에 http://웹사이트주소/#/auth/login  샵을 넣었을때는 메인페이지 출력이 됩니다.

그상태에서 다시 url에 엔터를 입력하면 화면 변화도 없는 상태입니다. 코드상에서 할수 있는 거로는 라우터 파일에서 

$route['404_override'] = 'errors';

$route['translate_uri_dashes'] = FALSE;

//$route['index'] = 'main';
$route['wingsp'] = 'member';
$route['userchk/login\.form\.php'] = 'member';
$route['goURL\.html'] = 'bid/goUrl';
$route['privacy\.html'] = 'main/privacy';
$route['menu_01_list\.html'] = 'orderplan/lists';
$route['menu_02\.html'] = 'bid';
$route['menu_03\.html'] = 'bid/rslt';
$route['menu_04_list\.html'] = 'contract/lists';

if($_SERVER['REQUEST_URI'] == '/menu_04_list.html?type=4'){
    $route['menu_04_list\.html'] = 'negotiation/lists';
}else if($_SERVER['REQUEST_URI']== '/menu_04_list.html?type=5'){
    $route['menu_04_list\.html'] = 'subcontract/lists';
}else{
    $route['menu_04_list\.html'] = 'contract/lists';
}

$route['menu_05_list\.html'] = 'contract/lists/pv';
$route['menu_06_list\.html'] = 'legislation/lists';
$route['menu_08_list\.html'] = 'payment/lists';
$route['menu_09_list\.html'] = 'notice/lists';

위의 라우터파일 설정이 끝입니다.

라우터 파일외에 다른 확인해봐야할 사항이 있을까요?