关于内网中的信息收集,环境用的之前搭好的内网环境环境搭建
信息收集
- 判断是否在域内:net time /domain
- 存在域,且当前用户是域用户
-
-
存在域不确定,但当前用户不是域用户
-
不存在域
- 在 DNS 上,单击开始,然后单击运行。
- 在打开框中,键入cmd。
- 键入nslookup,,然后按 enter 键。
- 类型设置类型 = all,然后按 enter 键。
- 键入_ldap._tcp.dc._msdcs.域名,其中域名是您的域的名称,然后按 enter 键。
Nslookup 返回一个或多个 SRV 服务位置记录出现在下列格式中,其中服务器名是域控制器的主机名
Nslookup -type=SRV _ldap._tcp.dc._msdcs.域名
域名是域控制器所属的域和Server_IP_Address是域控制器的 Internet 协议 (IP) 地址:
Server: localhost
Address: 127.0.0.1
_ldap._tcp.dc._msdcs. Domain_Name
SRV service location:
priority= 0
weight= 100
port= 389
srv hostname= Server_Name . Domain_Name Server_Name . Domain_Name internet address = Server_IP_Address
收集域信息
- 域内的一些信息收集,查看域用户:net user /domain
-
- 查看有几个域:net view /domain。(记得开启computer browser服务)
-
-
查看域内电脑:net view /domain:***.
-
查看域里面的组:net group /domain.
-
查看加入到域内的所有计算机名:net group "domain computer" /domain.
- 查看域管理员:net group "domain admins" /domain.
-
-
举一反三,查看域控制器:net group "domain controllers" /domain.
- 获取指定账户的详细信息:net user littletech /domain.
-
- 获取域密码策略:net accounts /domain.
-
- 添加普通域用户:net user Lu0chen chenLu0123 /add /domain
- 将普通域用户提升为域管理员:net group "domain admins" Lu0chen /add /domain
- 当然,上面两条命令,需要你有域管理的权限。
-
追踪路由:tracert 8.8.8.8
使用批处理命令来扫描
- 当无工具可用的情况下,使用批处理命令来对网段进行扫描
- 比如,当我们想扫描整个网段的时候:
for /l %i in (1,1,255) do @ping 192.168.10.%i -w 1 -n 1 | find /i "ttl"
- 解释一下这个命令的含义,
- 首先是个批处理命令for循环,/l的意思是迭代函数,迭代的是后面的(1,1,255).
- (1,1,255)的意思是从1开始,到255结束,每次增加1位。比如for /l %i in (1,1,5) do @echo %%i,就会打印1,2,3,4,5.关于for循环的更多详细参数,可以看看这个:链接
- 后面接ping命令,关于ping命令的参数那些可以看这篇文章:链接
- find 不多说,寻找里面的"ttl"
进阶
- 基本了解了原理后,我们就可以添加一些功能,比如,我们在扫描的同时,想扫描出域主机对应的ip,我们可以这样改命令。
for /f "eol=- token=1 delims=\ " %a in (\'net view\') do @(echo name: %a, ip: & ping %a -w 1 -n 1 | find /i "ttl" & echo)
- 我们都知道,当我们想从计算机名获取ip的时候,使用ping命令。但当计算机名很多的时候,也可以通过批处理命令,批量获取ip
@echo off
setlocal enabledelayedexpansion
@For /F "usebackq eol=- skip=1 delims=\" %%j IN (`net view ^| find "命令成功完成" /v ^|find "The command completed successfully." /v`) DO (
@FOR /F "usebackq delims=" %%i IN(`@ping -n 1 -4 %%j ^|findstr "Pinging"`) DO (
@FOR /F "usebackq tokens=2 delims=[]" %%k IN (`echo %%i`) DO (echo %%k %%j)
)
)
- 这样,就可以循环得到多个计算机对应的ip,然后输出。
- 其中,setlocal enabledelayedexpansion 是扩展本地环境变量延迟,具体分析可以看看这篇文章:链接
- eol,指一个行注释字符的结尾。
- skip,指开始时忽略的行数。
- delims,指分隔符集。这个替换了空格和回车的默认分隔符集。
- usebackq,使用后引号。看了些文档,总结一下,这个参数的目的就是为了处理带有空格的文件名。当你要处理的文件名和路径中含有空格的时候,如果直接用,会提示找不到文件,如果你用双引号将文件名和路径括起来。这个时候将作为字符串处理,而不是作为文件了。所以我们才会使用这种参数,对于括号中的加双引号的集合,系统就可以认为是文件了;真正的字符串要加单引号,命令要加反引号。
net命令
- 映射磁盘到本地:net use z: \\dc01\sysvol
-
查看共享:net view \\192.168.10.20
-
开启一个共享名为Lu0chen$,在d:\config net share Lu0chen$=d:\config,当然,需要管理员权限。
端口总结
- 这里,收集了常用的端口及对应攻击总结。
端口号 |
端口说明 |
攻击技巧 |
21/22/69 |
ftp/tftp:文件传输协议 |
爆破、嗅探、溢出、后门 |
22 |
ssh:远程连接 |
爆破OpenSSH:28个退格 |
23 |
telnet:远程连接 |
爆破、嗅探 |
25 |
smtp:邮件服务 |
邮件伪造 |
53 |
DNS:域名系统 |
DNS区域传输、DNS劫持、DNS缓存投毒、DNS欺骗、利用DNS隧道技术刺透防火墙 |
67/68 |
dhcp |
劫持、欺骗 |
110 |
POP3 |
爆破 |
139 |
samba |
爆破、未授权访问、远程代码执行 |
143 |
imap |
爆破 |
161 |
snmp |
爆破 |
389 |
ldap |
注入攻击、未授权访问 |
512/513/514 |
linux r |
直接使用rlogin |
873 |
rsync |
未授权远程访问 |
1080 |
socket |
爆破:进行内网渗透 |
1352 |
lotus |
爆破:弱口令、信息泄露:源代码 |
1433 |
mssql |
爆破:使用系统登录、注入攻击 |
1521 |
oracle |
爆破:TNS、注入攻击 |
2049 |
nfs |
配置不当 |
2181 |
zookeeper |
未授权访问 |
3306 |
mysql |
爆破、拒绝服务、注入 |
3389 |
rdp |
爆破、shift后门 |
4848 |
glassfish |
爆破:控制台弱口令、认证绕过 |
5000 |
sybase/DB2 |
爆破、注入 |
5432 |
postgresql |
缓冲区溢出、注入攻击、爆破:弱口令 |
5632 |
pcanywhere |
拒绝服务、代码执行 |
5900 |
vnc |
爆破:弱口令、认证绕过 |
6379 |
redis |
未授权访问、爆破:弱口令 |
7001 |
weblogic |
Java反序列化、控制台弱口令、控制台部署webshell |
80/443/8080 |
web |
常见web攻击、控制台爆破、对应服务器版本漏洞 |
8069 |
zabbix |
远程命令执行 |
9090 |
websphere控制台 |
爆破:控制台弱口令、Java反序列化 |
9200/9300 |
elasticsearch |
远程代码执行 |
11211 |
memcacache |
未授权访问 |
27017 |
mongodb |
爆破、未授权访问 |
- 一些常见的详细利用与防御可以看这个:链接
扫描分析
nbtscan
-
获取mac地址:nbtscan -m 192.168.10.40
-
获取计算机名、分析dc、是否开放共享:nbtscan 192.168.10.0/24
- 其中:
- SHARING 表示开放共享。
- DC表示可能是域控,或者辅助域控
- U=user猜测此计算机登录名
- IIS表示运行在web80
- EXCHANGE 表示微软的exchange服务
- NOTES Lotus Notes服务
WinScanx
- 信息收集工具,当有登陆账号密码的时候,能获取目标很详细的内容。其中还有snmp获取,win密码猜解等。
WinScanX.exe -3 ip username password -a > 123.txt
-
因为输出有点多,我们导入到一个文件里
-
运行完成后,我们看看123.txt
- 还有很长一串信息,我就不截完了,总之,它可以获取很多对我们有用的信息。
InsightScan
-
扫描端口的一个工具,python scaaner.py 192.168.10.0/24 -N