iis如何更加的安全配置

准则:
1.目录有写入权限,一定不要分配执行权限
2.目录有执行权限,一定不要分配写入权限

现在来算 自己学web安全 也差不多学了快半年了 在提权方面还是没有更多办法 每次自己拿站 运气好的话 可以进行命令执行 这种情况来说是比较好的 我们可以直接尝试去提权 反弹个meterpreter 直接比较exp 进行exp提权 再不济也有各种方法可以去尝试尝试

但是如果我们一开始拿到的站 根本没有权限去执行命令的话 这时候就需要去考虑各种各样的方面了 到底是waf在作怪呢 还是权限的问题呢 还是cmd被删除无法访问呢 然后再考虑解决的问题 环境是asp php aspx jsp 如果asp的话组件提权等等 php的话一般都是disable function 在作怪 waf的话可能头就痛起来了 说到底提权也是一门学问 重在信息搜集

在这次我感觉可能直接能难倒一大片的人了 所以知己知彼百战百胜对于iis的话 我感觉我们应该先去了解权限为什么会这样子 为什么命令会执行不了 为什么无法跨目录 为什么等等的问题? 要不然大家难道不会感觉直接去提权会觉得怪怪的吗。。。

这里我首先问大家一个问题 一般我们拿到站 whoami显示出的NetworkService这个是什么呢?

我平常就听到大家说这个是权限 其实我听的是一脸懵逼 权限?? 但是是啥意思 权限的意思就相当于用户的意思吗?
但是我昨天自己配置的时候 发现原来的用户里面又是没有这个NetworkService这个用户的呢 那又是啥情况?查资料发现这里的问题其实就关于到iis本身的应用程序池标识解析(程序池账户) 这个了 当我们创建网站的时候都需要程序池 这里程序池的作用 就是相当于一个容器 用于承载站点的作用 (ps 这里是个人见解 不要喷俺啊 俺才18岁)

在这里我搭建的是iis7.5 就是win2008 r2 的系统
IIS7.5中(仅win7,win2008 SP2,win2008 R2支持),应用程序池的运行帐号,除了指定为LocalService,LocalSystem,NetWorkService这三种基本类型外,还新增了一种ApplicationPoolIdentify

这里就有四个账号 localsystem的权限就相当于系统权限system
localservice 和ApplicationPoolIdentify和NetWorkService 权限不大不小刚刚好 这里是我的理解
正常的我们都是默认的配置 NetWorkService这个权限

现在我们又返回到之前的问题 那么发现原来的用户里面又是没有这个NetworkService这个用户的呢 那又是啥情况?

系统动态创建的“虚拟”帐号(说它是虚拟的,是因为在用户管理里看不到该用户或用户组,在命令行下输入net user也无法显示,但该帐号又是确实存在的)

我们打开任务管理器 发现有个w3wp.exe即iis进程 如果你此时是NetWorkService 那你会发现此时任务管理器中w3wp.exe右边的用户名则为NetWorkService

如果我们想发现这个NetWorkService 到底是哪来的话 其实也有方法 我们去添加用户 然后查找 再点击立刻查找(我这里就不做图片解释了 大家都是玩渗透的 应该都懂的) 然后找到NetWorkService 添加就可以了 其实这个就是我们虚拟账号里面的NetWorkService 这个用户 一样可以进行配置

一般的虚拟主机的话 一般都是每个站点都创建一个用户然后把用户都隶属于guest组 然后再进行一系列的目录权限的控制 命令的控制 组件的删除 让你欲罢不能 其实就是我自己的理解 我也不是提权大佬

1、当发现自己有列目录的权限的时候 但是发现每个除了自己当前的目录(其他目录都不写)或者除了当前目录(其他目录都不写)那么就是管理员的操作就是限定了文件夹的权限操作

你可能感兴趣的:(渗透技巧)