바로가기 메뉴
본문내용 바로가기
메인메뉴 바로가기



Customer Center

Notice · Security Issue · Account Guide · Global Traffic Test

HOME > Customer Center > Tech Note

기술노트

APACHE/PHP 버전 정보 숨기기
2016.02.18

공격자는 여러가지 경로를 통해 해당 공격 대상 시스템을 분석한다.

특히 버젼정보를 확인하여 취약점이 있는버젼이라면 타켓으로 정해 공격을 해오는 경향이 있다.
버젼정보를 숨기자~

shell>telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is "^]".
HEAD/ HTTP/1.0
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
<hr>
<address>Apache/2.0.59 (Unix) PHP/4.4.4 Server at * Port 80</address>
</body></html>
Connection closed by foreign host.

위와 같이 버전 정보를 이용해서 해킹을 시도하는 인간들이 간혹있다.
간단히 숨겨버리자~

Apache httpd.conf의 ServerTokens 지시자를 이용하자

ServerTokens Prod

ServerTokens Prod[uctOnly] : Apache만 보여줌
Min[imal] : Apache 버젼만 보여줌
OS : 아파치 버젼과 운영체제를 보여줌
Full (또는 지시하지 않았을때) : 모두보여줌

PHP에서 php.ini 파일에서 expose_php = Off 로 설정후
Apache 재가동

shell>telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is "^]".
HEAD/ HEAD/1.0
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
</p>
<hr>
<address>Apache Server at * Port 80</address>
</body></html>
Connection closed by foreign host.
이호스트데이터센터(http://www.ehostidc.co.kr)
첨부파일