第一次参与渗透测试项目

这是人生中第一次参与项目,项目开始到结束花了半个多月的时间。在此记录一下第一次参加项目遇到的一些漏洞与一些感受

渗透过程

整个渗透过程为"工业化渗透"——在时间紧任务重的情况下,基本上每一个地方都只能采取流水化作业。即扫描器批量扫描,之后人工验证漏洞是否存在。

整个过程主要使用了两款扫描器

  • AWVS
  • nessus

AWVS主要扫描web层面的漏洞,可以自行挖掘目录结构,还可以挖掘邮箱泄露。
nessus主要扫描主机层面的漏洞,可以自行扫描主机的所有端口并识别有什么服务。

在人工验证完扫描器产出的漏洞时,如果时间有剩余,就手动挖掘目标。web层主要看输入口,寻找sql注入拿数据,文件上传拿shell等。而内网层主要根据已有漏洞去扩展,比如当下拿到目标服务器权限的时候,怎样去寻找目标服务器的数据库密码等。

外网层面

1. 弱口令

常出现于登录窗口(前台后台的登录窗口都可能出现弱口令漏洞)
用AWVS可以扫描出常见的弱口令漏洞并且报出弱口令的值
如果遇到复杂的弱口令情况,可以尝试使用字典爆破。但实际渗透过程中一定要控制爆破的线程。
常见弱口令:

  • admin / admin
  • admin / 123456
  • admin / root
  • admin / 888888

2. 信息泄露

关注dirsearch的扫描结果往往会有意外收获

  • web中间件信息泄露
  • 目录遍历漏洞

3. 基础漏洞

  • SQL注入
  • 储存型XSS
  • 越权访问

内网层面

1. 可利用RCE漏洞

漏洞利用脚本均是从github上面扒下来的

  • Oracle WebLogic Server Deserialization RCE (CVE-2019-2729)
  • redis未授权访问
  • ldap匿名访问漏洞

2. 可利用获取数据漏洞

  • MongoDB未授权访问
  • redis未设置密码
  • ssh弱口令

3. dos攻击

扫描器扫出dos漏洞的时候,注意只用上验证脚本即可。切忌直接用攻击脚本。公司的业务还跑着的,这一下打过去估计就进去了

  • ms12-020
  • ms15_034

简单组合拳

1. redis未授权 + nginx配置文件

通过redis未授权访问漏洞写入公钥,使用私钥通过ssh登录主机,查看nginx.conf,发现数据库密码
Alt text

一些感受

整个项目做下来,最大的感受就是操作的重复性和漏洞的单一性。这种时间紧迫的情况下,很难看到使用奇淫技巧进行渗透的方式。往往就是拿到目标数据或者目标权限就直接撤退。而我作为一个新人,跟在大佬后面。能够起的作用也只有机械化的验证漏洞是否存在。
在这种大型的单位里面,外网层的漏洞少得可怜。但是,一旦接入内网,简直就是满目疮痍。弱口令,未授权,RCE,应有尽有。这些单位几乎将所有精力都放在了web层的防护上,而忽略了内网的重要性。也有一部分原因是因为内网的复杂性远远高于外网。单位技术人员并不能照顾到内网的每个细节。所以在扫描器这种机械化的工具之下,这些细小的失误就展露无余。
半个多月过去了,其实感觉自己并没有学到什么实质性的东西。只是体验了一下"工业化渗透"的过程。除了累和乏味,没有什么其他感受了。

Last modification:August 27th, 2019 at 11:48 pm
给肥宅一点零花钱买可乐叭 (゜-゜)つロ