当前位置 主页 > 服务器问题 > win服务器问题汇总 >

    IIS&Apache 攻击记录分析篇

    栏目:win服务器问题汇总 时间:2019-11-15 10:03

    在这里,我为大家介绍一下两种常见的网页服务器中最重要的记录文件,分析服务器遭到攻击后,黑客在记录文件中会留下什么记录。目前最常见的网页服务器有两种:Apache和微软的Internet Information Server(简称IIS),这两种服务器都有一般版本和SSL认证版本。本文将使用和现实黑客的攻击手段类似的攻击方法去测试服务器并分析相关文件,有条件的朋友可在自己的机器上测试。
    IIS的预设记录文件地址在C:\winnt\system32\logfiles\w3svc1目录下,文件名是当天的日期,如yymmdd.log,系统会每天产生新的记录文件。预设的格式是W3C延伸记录文件格式(W3C Extended Log File Format),很多相关软件都可以分析这种格式的档案。记录文件在预设的状况下会记录时间、客户端IP地址、Method(GET、POST等)、URI stem(要求的资源)和HTTP状态(数字状态代码)。这些字段大部分都一看就懂,只是HTTP状态需要有大概的了解。

    小知识:一般而言,如果代码是在200到299代表成功。常见的200状态码代表符合客户端的要求;300到399代表必须由客户端采取动作才能满足所提出的要求;400到499和500到599代表客户端和服务器有问题。最常见的状态代码有两个,一个是404,代表客户端要求的资源不在服务器上,403代表的是所要求的资源拒绝服务。

    Apache记录文件的预设储存位置在/usr/local/apache/logs,最有价值的记录文件是Access_log,不过 SSL_request_log和SSL_engine_log也能提供有用的资料。 Access_log记录文件有七个字段,包括客户端IP地址、特殊人物识别符、用户名称、日期、Method Resource Protocol(GET、POST等;要求哪些资源;协议版本)、HTTP状态、还有传输的字节。

    常规探测手段的记录分析
    网页服务器版本是很重要的信息,黑客一般先向网页服务器提出要求,让服务器送回本身的版本信息:只要把「HEAD / HTTP/1.0」这个字符串用常见的Netcat utility(相关资料网址http://www.l0pht.com/~weld/netcat/)和OpenSSL binary(相关资料网址http://www.openssl.org/)送到开放服务器的通讯端口就成了。注意看下面的示范:

    C:>nc -n 10.0.2.55 80
    HEAD / HTTP/1.0
    HTTP/1.1 200 OK
    Server: Microsoft-IIS/4.0
    Date: Sun, 08 Mar 2004 14:31:00 GMT
    Content-Type: text/html
    Set-Cookie: ASPSESSIONIDGQQQQQPA=IHOJAGJDECOLLGIBNKMCEEED; path=/
    Cache-control: private

      这种形式的要求在IIS和Apache的记录文件中会生成以下记录:

    IIS: 15:08:44 11.1.2.80 HEAD /Default.asp 200
    Linux: 11.1.2.80 - - [08/Mar/2004:15:56:39 -0700] "HEAD / HTTP/1.0" 200 0

      虽然这类要求合法,看似很平常,不过却常常是网络攻击的前奏曲。Access_log和IIS的记录文件没有表明这个要求是连到SSL服务器还是一般的网页服务器,可是Apache的 SSL_request_log和SSL_engine_log(在/usr/local/apache/logs目录下)记录文件就会记录是否有联机到SSL服务器。请看以下的SSL_request_log记录文件:

    [07/Mar/2004:15:32:52 -0700] 11.1.1.50 SSLv3 EDH-RSA-DES-CBC3-SHA "HEAD / HTTP/1.0" 0

      第三和第四个字段表示客户端使用的是哪种加密方式,以下的SSL_request_log分别记录从OpenSSL、Internet Explorer和Netscape客户端程序发出的要求:
    [07/Mar/2004:15:48:26 -0700] 11.1.1.50 SSLv3 EDH-RSA-DES-CBC3-SHA "GET / HTTP/1.0" 2692
    [07/Mar/2004:15:52:51 -0700] 10.0.2.55 TLSv1 RC4-MD5 "GET / HTTP/1.1" 2692
    [07/Mar/2004:15:54:46 -0700] 11.1.1.50 SSLv3 EXP-RC4-MD5 "GET / HTTP/1.0" 2692