SMB枚举有脚本吗

极客

SMB枚举有脚本吗?嘿,这事儿我可太有发言权了!

SMB枚举有脚本吗

说真的,每次一提到“SMB枚举有脚本吗”这个问题,我就想起我刚入行那会儿,头一回接触内网渗透的场景,那时候懵懵懂懂的,只知道SMB是个啥协议,但真要动手去枚举共享、找用户、看权限,整个人就跟无头苍蝇似的,后来还是圈里一个老哥跟我说:“你傻呀,SMB枚举有脚本吗?当然有啊,而且一堆!”我当时那个激动啊,就跟发现了新大陆一样。

所以今天咱就好好唠唠这个事儿——SMB枚举有脚本吗?答案必须是肯定的,而且不光有,还好用得很,但咱不能光说“有”就完事儿了,得掰扯掰扯到底有哪些脚本、怎么用、啥场景下用哪个,对吧?不然你光知道个“有”,跟不知道有啥区别?

先说说最经典的,SMB枚举有脚本吗?你要是玩过Kali,肯定绕不开一个东西——enum4linux,这玩意儿简直就是SMB枚举界的“瑞士军刀”,它其实底层调用的就是smbclient、rpcclient、net这些命令,但人家给你封装好了,一条命令下去,用户列表、共享列表、密码策略、甚至操作系统信息,哗啦啦全给你列出来,我第一次用的时候,屏幕上刷出那么多信息,我都愣住了——这也太爽了吧?就跟开盲盒似的,你永远不知道对面那台Windows机器能吐出多少东西来。

不过呢,enum4linux虽然好用,但它有个小毛病,就是动静有点大,容易被审计设备逮住,这时候就有人问了:“SMB枚举有脚本吗?有没有那种悄咪咪的?”嘿,当然有!Nmap的NSE脚本了解一下?smb-enum-shares、smb-enum-users、smb-os-discovery,这几个脚本一上,配合-p 445端口,那叫一个丝滑,而且Nmap本身就自带隐蔽扫描的选项,你调调时序模板,慢点儿扫,一般IDS还真不一定能反应过来,我有一回做内网评估,就是用nmap --script smb-enum-shares,smb-enum-users -p 445 192.168.1.0/24,一口气把整个C段给撸了一遍,那感觉,就跟拿着钥匙挨个开锁似的,贼有成就感。

哦对了,说到SMB枚举有脚本吗,不能不提smbmap,这脚本简直是为“看共享权限”量身定做的,你只要给个用户名密码(或者空会话),smbmap -H 目标IP一敲,它立马告诉你哪个共享可读、哪个可写、哪个能执行,我印象特别深,有一次我扫出来一个共享,居然Everyone都能写,当时我就乐了——这不就等于门没锁嘛!后来顺着那个可写共享,直接传了个恶意的scf文件上去,等管理员一浏览文件夹,嘿嘿,你懂的,所以你看,SMB枚举有脚本吗?不光有,还能帮你挖到这种“宝藏”配置。

还有那个crackmapexec,现在改名叫nxc了,但老家伙们还是习惯叫它cme,这东西枚举SMB那叫一个猛,cme smb 192.168.1.0/24一跑,什么系统版本、域信息、SMB签名开没开、甚至能不能用空会话连,全给你标得明明白白,而且它还支持批量密码喷洒,你拿一个密码去试一堆用户,看哪个能登上去,我以前做横向移动的时候,就靠它找准了几个“软柿子”,然后一打一个准。

不过话说回来,SMB枚举有脚本吗这个问题,有时候也分场景,你要是在Windows上,不想装一堆Linux工具,那PowerShell脚本也能顶上,比如PowerView里的Invoke-ShareFinder,或者直接用Get-SmbShare、Get-SmbSession这些原生命令,照样能把共享和会话信息摸清楚,只不过PowerShell脚本的隐蔽性嘛……就看你怎么执行了,反正我一般还是偏爱Linux下的那些工具,顺手。

哎呀,不知不觉唠了这么多,其实说到底,SMB枚举有脚本吗?这问题本身就有点“新手可爱”的味道,老手都知道,SMB枚举的脚本多得能写一本书,关键不在于“有没有”,而在于“你会不会用、知不知道啥时候用哪个”,你要是只会enum4linux一把梭,碰到防护严一点的环境可能就吃瘪了;但你要是把Nmap NSE、smbmap、cme、甚至Metasploit里的smb_enumusers、smb_enumshares模块都玩溜了,那基本上内网里那些SMB服务在你面前就跟透明的一样。

最后再啰嗦一句,SMB枚举有脚本吗?有,而且很多都是现成的、开箱即用的,但千万别拿着脚本就乱扫,尤其是生产环境,搞不好就把服务扫挂了或者触发告警,咱做安全的,讲究的是“稳、准、轻”,别为了图快把自个儿暴露了,好了,今天就聊到这儿,我得去试试新出的那个nxc的SMB枚举模块了,听说又加了不少骚功能,回头再跟你们分享哈!

文章版权声明:除非注明,否则均为极客网安-咸鱼原创文章,转载或复制请以超链接形式并注明出处。

目录[+]