讨论:边界之后下一步你会做什么?

  • A+
所属分类:网络安全

在对一个目标进行渗透测试时,找到了一台服务器的漏洞获取相关权限进入内网,在发现该服务器上并没有什么敏感数据,必须要对其内网进行下一步的渗透,你会怎么收集信息呢? 

1 扫描内网段内的80端口看title。 
2 扫描内网段内的各种服务(ssh、ftp、snmp、mysql、telnet等)弱口令 
3 ??? 

各位在进行内网测试的时候是如何进行第一步收集信息的呢,如果网段特别大的话,从哪里收集开始呢?


1#mickey | 2015-09-16 16:41

看日志(web/安全日志),看内网谁和这台机器联系。如果有web,根据日志,先探针,然后定向挂马。安全日志链接过来的,原来有一个3389登录过来,然后如果管理员挂载了系统磁盘(通常c),写启动项。下次上线。 一般都先做这些,然后才扫描。

 

2#livers | 2015-09-16 17:37

按任务打卡,

网段大的话 一般在AD域里面,基本上域一套命令 来收集

net group “domain admins” /domain

dsquery server/computer/user/contact/group/ou/site 等。

基本上获取到大部分域的信息

接下来搞域控制器

可以爆破  可以嗅探抓NT-hash (或者猥琐一点 社工下域控管理员来链接下机器)

NT-hash拿到可以爆破 生成一般TGT

也可以使用CVE-2014-6324 生成Golden Ticket

这时可以横着爬了

 

3#三好学生 | 2015-09-16 17:52

@livers 也可以试试kerberoast:)

https://github.com/nidem/kerberoast

 

4#xsser | 2015-09-16 18:06

提交乌云

 

5#随风的风 | 2015-09-16 18:14

提交乌云

 

6#牛 | 2015-09-16 18:39

@xsser 管理员乱删我帖子  我就发个解密贴就删了 我进不来社区 可恶

 

7#phith0n | 2015-09-16 22:33

我用我为数不多的经验想一哈……

我觉得,一个机子如果是“真的”在内网里的话,很难一点东西也挖掘不出来。

为什么“真的”打引号,因为有些机子也是内网地址,比如阿里云,但实际上这台机子是独立的,和内网内的其他机器没有任何关系。

如果是在企业内网的话,往往还是能挖出一些信息的,先确定这台机子是做啥的:web、数据库、文件、备份、测试。。。

然后就根据具体用途挖掘具体信息:

比如看各种文件:

/etc/hosts (查找内网地址最常见的地方)

nginx/apache/php/fastcgi(配置文件,配置文件里有包含的,一样一个一个看)

redis/mysql/mongod/memcached (不光看配置文件,还要连进去看内容,挖掘敏感信息,如密码、邮箱等)

rsyncd | 2.限制的IP如何 3.什么权限 4.是否允许chdir)

/tmp/ (各种宝藏聚集地,比如可以挖掘一下session里有保存啥)

/etc/init.d/

/etc/systemd/

/etc/passwd 

/etc/crontab

有root权限,就看看~/.bash_histoty、~/crontab、~/.bashrc、~/.ssh/known_hosts、~/.dbshell(这个是mongodb的记录)、~/.mysql_history。。。太多了,不一一列举。

各种源(yum、apt-get、pip、composer、gem、npm)配置文件(可能是内网的源)

*/.git/config (多看看有.git的目录,svn同理,有时候找得到内网的gitlab)

php扩展目录(有时候能找到一些有趣的扩展,不多说)

vpn、shadowsocks等客户端配置文件:国内企业服务器要翻墙也比较常见

zabbix配置文件

/etc/mail.rc

除了看敏感文件,网络拓扑也看看,比如ifconfig、traceroute、nslookup……

还有进程ps aux

还有登录记录last,看看哪些IP登过,很可能也是内网机器

找路由设备什么的。

找这些敏感文件,运气好能找到一些一看就是通用密码、规律密码之类的密码,但毕竟是可遇不可求的。主要目的是找内网里功能机器:

更新源、git、svn,这类机器如果拿下来,影响大量内网机器。在内网内其他机器更新软件、拉代码的时候你就不经意间搞下他的机器了。

fastcgi(对应9000端口):一般会放源码,拿下来了以后后续挖漏洞,后续的渗透方便的多

rsyncd(对应端口873):做备份或负债均衡,拿下来一样能搞到很多源码(通过高权限rsyncd可以直接提权)

mysql/mongod/mssql/oracle...:数据库服务器,意义不言而喻,拿得到很多密码,渗透就方便多了(关键是怎么拿?只能看运气了,通用密码、内网的未授权访问等)

redis/memcached:可能放一些session,也能对web渗透有一定帮助

ftp/nfs/samba:文件共享服务器,有时候会放一些软件,特别是公司内部员工的软件。拿下这些服务器,打入办公网络

ldap:很可能全内网权限管理的节点就在这里,就算只拿下一个员工的ldap用户权限,也是一个大突破

……

太多了一时很难列全,主要是这些。

找到这些功能性机器,再测试未授权访问、弱密码、通用密码,通用漏洞等,拿下这些机器,再收集信息继续搞。

我进内网其实第一个目的是拿到尽量多的源码,一是拿源码往往比留后门要好得多,因为源码其实就是最大也是最安全的后门。以后,想起来的时候随便挖一个洞,又进到内网里了。

说到底还是尽量翻出更多的敏感信息,再利用各种漏洞拿下内网内的服务器。我觉得扫描是万不得已的时候我才会做的事,因为就很多内网的安全性来看,还没有到只能扫描那一步。

说几个例子:

1.通过某ldap拿下某个开发的机子的root,通过这个人的public key拿下很多内网机器

2.通过rsyncd拿下所有负债均衡的web服务器webshell

3.拿下svn,修改代码,等待部署,拿下主站

……

 

8#phith0n | 2015-09-16 22:37

唉,抛砖引玉。涉及到windows和域的,不懂等待大家补充

 

9#huoji | 2015-09-16 23:15

7楼P牛高能

 

10#redrain有节操 | 2015-09-16 23:17

@mickey mickey老师说的好,不过既然都撕开边界了,那就从本台机器开始入手,看accesslog,history,通过accesslog确定内网访问记录,通过history还原用户操作,找到关联机器,看hosts确定内部业务,看其他log,确定用户个人办公网段,或其他业务段,由以上这些行为基本可以模糊确定这个内网的业务段,办公段之类,看本地进程和端口,确定本地开启的服务,根据服务寻找敏感信息,有链接串的,拿下来,有用户备忘的,拿下来,做针对字典,以备之后渗透

确定了网段后,即可开始针对性探测,为了防止内网流量监控或者行为监控,最好做半开放扫描,或者自行判断当前机器探测行为后是否有可能触发监控,比如一些边缘功能机器,不可能主动访问内部业务的,就最好轻一些

如果目标很重要,很大,需要渗透的时候细致一些,最好代理或者反弹时对流量加密,混淆,尽量避免机器上的文件落写,尽量避免不必要的权限提升

这些都是我瞎说的,主要都是靠mickey老师教导我

 

11#K4r1iNNg | 2015-09-16 23:34

看到好多大牛思路 马克一下

 

12#哲璇 | 2015-09-17 09:16

7# 内网渗透总结

 

13#debug | 2015-09-17 09:26

进内网的目标不同 手法也略有不同

信息收集:

   网络信息:ipconfig  arp -a   "query user"   "net share"  nslookup  等等

   密码:浏览器  sam  navicat 等等配置信息

1.搞定目标站  

  在内网往往最重要的是信息收集,你要进去搞清楚大概网络的拓扑是怎么样的。 通过你已拿到的这个机器,在这个机器进行翻阅配置文件,如有dsn信息 那么你可以在内网试试dns域传送 这时候可以很快的找到目标网站的主站,看下是否在同一网段,开放的端口,有没有可能存在漏洞的端口  内网杀手 fastcgi  java debug rmi ,假设这太官网你搞不定,那么去渗透其他的机器。

2.获取更多的员工权限

  找到内网应用,如erp, OA等系统,可以搞下OA等系统之后定向挂马,先挂js探针,知道目标机器浏览器 等软件版本信息,你手里拿的0day针对于那些,之后进行挂马。

  切记:不要arp 不要arp 不要arp  重要的事情说三遍,哪怕dhcp也可以~~~

  自己去实战把,多动手, 不动手永远不知道你遇到的内网多么的破~  以现在很多企业的运维的人员懒散程度,你用不到去拼技术,密码通杀的太多。

 

14#L.N. | 2015-09-17 12:46

@mickey和@redrain有节操 老师告诉我,搞内网记住3个字“稳准狠”:

稳:尽量做静态分析(内网 扫嗅爆 尽量避开内网防护软件)

准:运维机、域控机、存储机(最好搞进运维ip段)

狠:该脱的别犹豫

 

15#冷冷的夜 | 2015-09-17 15:48

1.判断机器属于什么位置》DMZ,IDC,还是其他

2.看看能不能通过这台机器干了网管

3.然后开始扫描、探测,要注意,机器重要程度、和内网的安全策略,决定你扫描的方式和速度

 

16#DC3 | 2015-09-17 23:50

我用mimikatz直接拿到管理密码。。然后内网横着走。有些域环境管理都用domain admins的账户登陆过,所以应该有记录,然后登陆DC,继续横着走

 

17#fuckadmin | 2015-09-18 15:24

@livers 

1.不建议一进入内网就进行大规模的密码爆破和IP、端口扫描,极易引起IDS的报警。

2.可能个人习惯不同,我比较同意phith0n老师,先进行IP定位、如在测试网段或是办公网段等,再配合查看各种配置文件、执行命令返回的信息进行初步的信息收集。

3.通过查看配置文件,收集管理员密码配置规律、尝试进行密码结合。

 

18#我了个去 | 2015-09-18 15:59

补充几个:

x-sniffer 被动嗅探同交换下的  

net view 看共享 

装keylogger

装s5代理

耐心+运气

 

19#mramydnei | 2015-09-18 16:38

Ex:find | 2>&1|xargs grep -s -i 'password'

 

20#HelloKitty | 2015-09-18 17:08

先查看内网内在线主机:

for /L %i in (1,1,254) do ping -n 1 10.0.0.%i >>d:\p.txt

有的主机不一定能够回应ICMP包,但是一定会回应ARP包,因此执行完上述命令后第一时间使用arp -a命令定位存活主机。

再使用s扫描器,扫描这些主机的开放端口。

如果是SYSTEM权限,抓一下本地或者域哈希,然后迭代攻击。

其次是要确定服务器角色,比如目标是A,内网IP未知,但是你拿下了B,内网IP已知了。那如果上面的方法还不能确定A在内网哪个地方,我一般是用hijack轻量级的抓包分析,主要分析HTTP的host。

 

21#redrain有节操 | 2015-09-18 18:42

@L.N. 还是ln老师厉害!学习了~

 

22#x0ers | 2015-09-18 19:42

搞内网就是搞管理员

 

23#老实先生 | 2015-09-20 00:34

都是技术啊  留着以后看

 

24#abcdlzy | 2015-09-20 11:33

千万千万要限制扫描的线程数。。。。不说了,撸出血了。。。

 

25#春秋 | 2015-09-23 21:35


  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: