- A+
显示不全请点击全屏阅读
0×00 前言
0×01 Windows2003默认配置
0×02 Windows2003典型配置的权限
0×03 cmd运行的条件
0×00 前言
这一章主要讲解关于我们刚拿到webshell的默认权限,这一章主要集中一下,我们常常要入侵所拿下一个网站的权限后,得到的所谓webshell,他到底在windows下具有什么样的默认权限呢。
很多人虽然通过一些已知的漏洞拿下一个小的网站,比如上传一些木马,得到webshell,而且呢说自己也会挂木马,比如修改网站的首页,在上面加一个木马,让别人种远控,在那玩。
可他自己仍然搞不懂自己拿的这个webshell有什么作用,他能有什么样的权限,所以呢一些朋友问我的问题呢有点不知道咋回答- -。
比如一些很经典的问题,我拿了一个webshell怎么才能开远程桌面呢?是不是直接上传个远控然后执行cmd命令呢?为什么执行不了?要怎么样才能打开远程桌面。- -我就借着一些朋友经常问的问题来大概说一下吧.(这一节课,估计写完后jsp和php的不用写了呃.- -暂时还是不说着,卖个关子。)
怎样解决这些问题呢,首先我们得了解webshell的权限,通过上俩章的学习,应该明白我们所有对于那个iis搭建的网站的访问,默认都是属于的users组[默认情况下是这样的],用的是iis的那个IUSR_*匿名账号[哪个匿名帐号?可以说清楚一点,带上截图]来访问的。这也就是说,我们的webshell的权限是跟他一样的,默认是users组或者guests组[这是不准确的,默认是属于users,降权的话就是guest](在降权的情况下),这是一个基本的认识。然后,我们谈谈了解我们所具有的具体的那些权限,比如前俩章介绍的,关于磁盘的访问权限等等,在这一章也要介绍。
说白了就是这样把我们具体放到那个环境当中,假设我们是那个webshell,我们究竟有哪些权限。
这样的认识呢更具体,之前介绍的是,比较大范围的讲windows下面的这些用户,具有哪些权限,包括什么管理员账号,system账号,以及各种各样的管理组。实际上呢我们真正跟网络安全玩那个黑客木马,webshell,包括提升权限,真正要打交道的就是一个web服务器软件 默认用户访问的权限。
这章我们就站在一个webshell的角度来看待我们到底具有哪些权限,这一节章的主要内容呢,就是介绍配置,和典型配置的webshell权限,包括读、写、执行、还有一些扩展权限、运行cmd .
0×01 Windows2003默认配置
默认设置
首要区别! 默认在WINDOWS2003下是没有安装IIS的
在这里要说一下默认下windows2003安装完毕后默认是不会安装iis的,和windows2K不一样,2K在安装完后会自动安装一个iis5,这样会带来一个安装隐患,有一个iis5的远程溢出提权的漏洞,还貌似有写入的权限[这个是要看webdav是否开启的吧?],只要知道一台web的服务器安装了iis5,而且这台服务器在外网中,你就可以尝试使用iis5的远程溢出漏洞,来获取这台机子的权限.或者用iiswrite写入webshell,然后对他进行提权.(写入要开启webdav)
·默认只安装静态HTTP服务器
IIS 6.0的默认安装被设置为仅安装静态HTML页面显示所需的组件,而不允许动态内容,说的直白点,也就是只能解析htm、html等静态网页,而不能解析asp、asa等动态网页[这是加上的]。
需要在iis管理器,点击web服务拓展,允许Active Server Pages,这样才能解析动态网页。[加上的]
·增强的文件访问控制
匿名帐号不再具有web服务器根目录的写权限。另外,FTP用户也被相互隔离在他们自己的根目录中。这些限制有效的避免了用户向服务器文件系统的其他部分上传一些有害程序。例如攻击者可以向/scripts目录上传一些有害的可执行代码,并远程执行这些代码,从而攻击web站点
父目录被禁用
IIS 6.0中默认禁用了对父目录的访问。这样可以避免攻击者跨越web站点的目录结构,访问服务器上的其他敏感文件,如SAM文件等。当然也请注意,由于父目录默认被禁用,这可能导致一些从早期版本IIS上迁移过来的应用由于无法使用父目录而出错。[大多实际环境中都是启用了的]
坚持最小特权原则
IIS 6.0坚持一个基本安全原则–最小特权原则。也就是说,HTTP.sys中所有代码都是以Local System权限执行的,而所有的工作进程,都是以Network Service的权限执行的。Network Service是Windows 2003中新内置的一个被严格限制的账号。另外,IIS 6.0只允许管理员执行命令行工具,从而避免命令行工具的恶意使用。这些设计上的改变,都降低了通过潜在的漏洞攻击服务器的可能性。部分基础设计上的改变、一些简单配置的更改(包括取消匿名用户向web服务器的根目录写入权限,和将FTP用户的访问隔离在他们各自的主目录中)都极大地提高了IIS 6.0的安全性。
0×02 Windows2003典型配置的权限
1、磁盘权限
系统盘及所有磁盘只给Administrators 组和SYSTEM 的完全控制权限
系统盘Documents and Settings 目录只给Administrators 组和SYSTEM 的完全控制权限
系统盘Documents and SettingsAll Users 目录只给Administrators 组和SYSTEM 的完全控制权限
系统盘Inetpub 目录及下面所有目录、文件只给Administrators 组和SYSTEM 的完全控制权限
系统盘WindowsSystem32cacls.exe、cmd.exe、net.exe、net1.exe 文件只给Administrators 组和SYSTEM 的完全控制权限
2.不使用默认的Web站点,如果使用也要将IIS目录与系统磁盘分开
IIS默认创建的Inetpub目录会被删除[语句不通顺](在安装系统的盘上)
3.每个独立的要保护的个体(比如一个网站或者一个虚拟目录)创建一个系统用户,让这个站点在系统中具有惟一的可以设置权限的身份
这什么意思呢,一个网站一个账号,在我们入侵虚拟主机的时候,有一个方法叫做旁注,相信大家一定知道,以前用旁注入侵虚拟主机的速度不是一般的快,只要在几十个网站当中入侵了其中一个网站,然后找到他所在的目录,就能跨过去,写入你的马,完成这次入侵。
但是在独立需要保护的个体,创建一个系统用户,这种情况下,一个账号对应一个网站,对应一个目录,这种情况下,你的旁注就让失效了[需要配置完每个账户的权限之后才不能跨目录的]。或者说想当难以利用,为什么呢?因为你本身一个账号,比如说以A站的A账号,那么A账号只能在A站目录进行活动,你不能跑到B站的目录,因为你没有这个权限。B站同样也一样,他有个B用户,他也不能跑到A站去活动。[这是需要单独配置的]
这时候,我们如果想通过旁注渗透进目标站点,就需要通过一些方法尝试能否提权[修改了],成功后,再对[才能对]目标站进行修改主页。
有些刚学提权的,或许在某次比较幸运的时候遇到一些不会设置目录的管理员,故而利用旁注,入侵了其他的站,当遇到会设置安全权限的管理员的时候,他入侵了B站,知道了A站的路径,但偏偏跳不过去,那是因为你没有这个权限。
在典型的WEBSEHLL下,对于本站具有,读,写,修改,权限,目录下拥有相对的执行权限.
可以在指定的这个文件夹里,看他的文件,写入他的文件,也可以修改和删除它的文件,比如你可以执行一部分cmd的命令,比如一些嗅探工具的命令,这些都是相对的。[是否允许执行,是看具体配置的,默认是允许的](一般在web目录下是不允许执行pe文件的说)
0×03 cmd运行的条件
在iis的用户下,iis用户asp木马执行一些cmd命令时候需要wscript(wscript.shell/shell.application) 的支持.
而aspx的木马比如aspxspy是调用[是.net,不是aspx].net的组件,网上有网友提供了防止aspx运行cmd的方法就是禁止过程名字为w3wp.exe的运行任何外部exe文件。(- -不知道哪位大神可以绕过这个然后用cmd来执行命令呢?)
嗯,大概就这样说一下吧。说太多我后面会纠结的。
如果本文上述,有错别字或者其他一些语句不通/解释不对.请速与我联系,- -好让本宅好生学习一下.
感谢杨凡,感谢Spy4man,感谢Jan简若名基友0.0对我的解答..
Author:小乖&Mix0xrn
From:http://www.dis9.com
Tags:
渗透基础,
如果您喜欢我的博客,欢迎点击图片定订阅到邮箱 也可以点击链接【订阅到鲜果】
如果我的想法或工具帮助到了你,也可微信扫下方二维码打赏本人一杯咖啡