简介
用户名猜测工具主要用于使用 默认Solaris SMTP服务。可以使用expn,vrfy或 rcpt。
SMTP-user-Enum是通过SMTP服务(SendMail)在Solaris上枚举OS级用户帐户的工具。枚举是通过检查对VRFY,expn和rcpt命令的响应来执行枚举。它可以适应与其他脆弱的SMTP守护程序有关,但这从v1.0开始。
安装
tar 包安装
SMTP-user-Enum只是一个独立的perl脚本,因此安装就像将其复制到路径一样简单(例如/usr/local/bin)。到目前为止,它仅在Linux下进行了测试。
这取决于您可能需要首先安装的以下Perl模块:
- Socket
- IO::Handle
- IO::Select
- IO::Socket::INET
- Getopt::Std
如果已安装了Perl,则应该能够从CPAN安装模块:
perl -MCPAN -e shell
cpan> install Getopt::Std
通过以下命令下载 smtp-user-enum 工具的 tar 包。
wget https://pentestmonkey.net/tools/smtp-user-enum/smtp-user-enum-1.2.tar.gz
解压下载的 tar 包。
tar -zxvf smtp-user-enum-1.2.tar.gz
进入目录并查看。
cd smtp-user-enum-1.2/
ls
输入以下命令,如果出现这个界面就说明安装成功了。
./smtp-user-enum.pl
APT包管理器安装
Kali Linux 默认安装好 smtp-user-enum 工具了。也可以通过以下命令进行安装
sudo apt install smtp-user-enum
使用
1. -h
显示此帮助消息
smtp-user-enum -h
2. -m n
最大进程数(默认值:5)
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132 -m 10
3. -M mode
用于猜测用户名的方法 EXPN、VRFY 或 RCPT(默认值:VRFY)
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132
4. -u user
检查用户是否存在于远程系统上
smtp-user-enum -M VRFY -u admin -t 192.168.174.132
5. -f addr
MAIL FROM 电子邮件地址。仅在“RCPT TO”模式下使用(默认值:user@example.com)
smtp-user-enum -M RCPT -U user.txt -t 192.168.174.132 -f user@example.com
6. -D dom
附加到提供的用户列表以生成电子邮件地址的域(默认值:无)。当您想猜测有效的电子邮件地址而不仅仅是用户名时,请使用此选项。例如“-D example.com” 会猜测 foo@example.com、bar@example.com 等。而不是简单的用户名 foo 和 bar。
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132 -D example.com
7. -U file
通过 smtp 服务检查的用户名文件
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132
8. -t host
运行 smtp 服务的服务器主机
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132
9. -T file
运行 smtp 服务的主机名文件
smtp-user-enum -M VRFY -U user.txt -T servers.txt
10. -p port
运行 smtp 服务的 TCP 端口(默认值:25)
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132 -p 25
11. -d
调试输出
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132 -d
12. -w n
等待回复最多 n 秒(默认值:5)
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132 -w 10
13. -v
详细
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132 -v
综合使用
使用SMTP VRFY命令
下面的输出显示了 SMTP 服务器如何以不同方式响应有效和无效用户的 VRFY 请求。建议在运行 smtp-user-enum 之前执行如下手动检查。显然,如果服务器对有效和无效用户的请求没有不同的响应,那么该工具将无法工作。
telnet 192.168.174.132 25
HELO
HELO x
VRFY root
VRFY blah
要使用smtp-user-enum使用vrfy命令枚举有效的用户名,请首先准备用户名(users.txt)的列表,然后运行该工具如下:
smtp-user-enum -M VRFY -U user.txt -t 192.168.174.132
使用SMTP EXPN命令
下面的输出显示了 SMTP 服务器如何以不同的方式响应有效和无效用户的 EXPN 请求。
telnet 192.168.174.132 25
HELO
HELO x
EXPN root
EXPN blah
要使用smtp-user-enum使用expn命令枚举有效的用户名,请首先准备一个用户名(users.txt)的列表,然后按照以下方式运行该工具:
smtp-user-enum -M EXPN -U user.txt -t 192.168.174.132
使用SMTP RCPT命令
下面的输出显示了 SMTP 服务器如何以不同方式响应有效和无效用户的 RCPT TO 请求。这通常是最有用的技术,因为 VRFY 和 EXPN 通常被禁用以防止用户名枚举。
telnet 192.168.174.132 25
HELO
HELO x
MAIL FROM:root
RCPT TO:root
RCPT TO:blah
要使用 RCPT TO 命令使用 smtp-user-enum 枚举有效用户名,请首先准备用户名列表 (users.txt) 并按如下方式运行该工具(同样,结果与上面相同):
smtp-user-enum -M RCPT -U user.txt -t 192.168.174.132
枚举电子邮件地址而不是用户名
版本 1.1 添加了对可选地在每个用户名末尾附加域名的支持:
smtp-user-enum -D example.com -M RCPT -U user.txt -t 192.168.174.132
总结
smtp-user-enum 是一款高效的 SMTP 用户名枚举工具,适用于安全测试。通过灵活的选项和多种枚举模式,帮助测试人员快速识别目标系统上的有效用户名,提升渗透测试效率。
在此特别强调,本教程仅在合法授权的情况下进行测试和研究,请勿用于其他用途。未经授权使用此类工具可能会侵犯他人隐私,触犯相关法律,任何因此引发的法律或利益纠纷与本人无关。
欢迎各位大佬,小白来找我交流。