我在本地运行一台testing服务器,这台服务器也在Mac上广播(用于教育目的),我运行了一个名为acunetix(www.acunetix.com)的软件,并从另一台计算机上运行,它能够检测服务器上使用的技术。 我怎样才能阻止任何查看这些信息?
你想要阻止什么信息?
如果你正在谈论服务器的签名,比如
Server: Apache/2.2.9 (Debian) PHP/5.2.6-1+lenny3 with Suhosin-Patch mod_ssl/2.2.9 OpenSSL/0.9.8g
通过设置以下参数,可以很容易地在httpd.conf中移除它
ServerTokens Prod ServerSignature Off
另外,PHP是否可能会设置一个头来显示其版本,例如
X-Powered-By: PHP/5.2.6-1+lenny3
你可以使用下面的参数在你的php.ini中删除它
expose_php = Off
但是这不会阻止像acunetix这样的软件收集完整的信息。 这些软件被devise用来从网站返回的HTML代码收集任何信息到扫描器和服务器之间的networking通信的TCP Windows大小(而不是谈论域和DNS查询等等)。 信息收集是整个计算机安全领域。
我在堆栈溢出这个问题的答案可能会有一些帮助。
重要的是要认识到,即使你覆盖了所有更明显的公开可见的执行迹象,仍然有可能有足够的决定者来确定运行的环境。 一种可能的方法是使用TCP指纹来确定一个可能的操作系统,然后开始基于此来探索漏洞利用。