Serv-U漏洞简介:
漏洞是使用Serv-u本地默认管理端口,以默认管理员登陆新建域和用户来执行命令,Serv-u>3.x版本默认本地管理端口是:43958,默认管理员:LocalAdministrator,默认密码:#l@$ak#.lk;0@P,这是集成在Serv-u内部的,可以以Guest权限来进行连接,对Serv-u进行管理。
防止办法和对策:
一般防止方法:设置目录权限,通过去掉Web目录iusr用户的执行权限来防止使用Webshell来运行Exp程序。这种方法有一定的局限性,需要设置的目录很多,不能有一点疏漏,比如我就发现很多虚拟主机在C:\DocumentsandSettings\AllUsers\Documents目录以及下边几个子目录Documents没有设置权限,导致可以在这个目录上传并运行Exp,这种目录还有x:\php,x:\perl等,因为这种目录都是everyone完全控制的。有些主机还支持php,pl,aspx等,这简直就是服务器的Serv-U灾难,运行程序更加方便。
高级一点的防止办法:
修改Serv-u管理端口,用Ultraedit打开ServUDaemon.exe查找B6AB(43958的16进制),替换成自己定义的端口比如3930(12345),打开ServUAdmin.exe找到最后一个B6AB替换成3930(12345),启动Serv-u,现在本地管理端口就成了12345了:
TCP127.0.0.1:123450.0.0.0:0LISTENING
不过对付这种防范也很简单,netstat–an,就能看到端口了,有人说netstat无法运行,其实你再上传个netstat.exe到可执行目录运行就ok了,然后修改一下Exp编译,上传运行就好了,我修改了一个可以自定义端口的Exp,运行格式:
USAGE:serv-u.exeport"command"
Example:serv-u.exe43958"netuserxlxiaoxue/add"
更高级的防止办法:
修改管理员名和密码,用Ultraedit打开ServUDaemon.exe查找Ascii:LocalAdministrator,和#l@$ak#.lk;0@P,修改成等长度的其它字符就可以了,ServUAdmin.exe也一样处理。
这下默认的管理员连接不上了,有的管理员安装Serv-u都是使用默认目录C:\ProgramFiles\Serv-U安装,这个目录虽然不能写,也不能修改,但是默认iusr是可以读的,可以用webshell来下载ServUDaemon.exe,用Ultraedit打开分析一,Serv-U的帐号密码一样会被泄漏,可以修改Exp编译后上传运行。
Serv-U提权防御总结:
1.设置好目录权限,iusr用户不要有执行权限;
2.Serv-U最好不要使用默认安装路径,设置Serv-U目录的权限,只有管理员才能访问;
3.用上面的的办法修改Serv-U的默认管理员名字和密码,可以连端口也改掉。
*
* |