内网***测试定位技术总结
说起内网定位,无论针对内网查找资料还是针对特殊人物都是非常实用的一项技术。这里把目前能够利用的手段&工具都一一进行讲解。
0x02 服务器(机器)定位
收集域以及域内用户信息
收集域内域控制器信息
收集域控上域用户登录日志信息
收集域内所有用户名以及全名、备注等信息
收集域内工作组信息
收集域管理员帐号信息
收集域内网段划分信息
收集域内组织单位信息
常用收集域信息命令:
Ipconfig /all Tasklist /v Net use net group /domain 获得所有域用户组列表 net group “domain admins” /domain 获得域管理员列表 net group “enterprise admins” /domain 获得企业管理员列表 net localgroup administrators /domain 获取域内置administrators组用户(enterprise admins、domain admins) net group “domain controllers” /domain 获得域控制器列表 net group “domain computers” /domain 获得所有域成员计算机列表 net user /domain 获得所有域用户列表 net user someuser /domain 获得指定账户someuser的详细信息 net accounts /domain 获得域密码策略设置,密码长短,错误锁定等信息 nltest /domain_trusts 获取域信任信息
Net view
net view 看机器注释或许能得到当前活动状态的机器列表,tasklist可以得到当前机器跑着的域账号。
结构分析
从计算机名获取ipv4地址:
C:\Documents and Settings\Administrator\Desktop>ping -n 1 DC1 -4 Pinging DC1.centoso.com [192.168.206.100] with 32 bytes of data: Reply from 192.168.206.100: bytes=32 time<1ms TTL=128 Ping statistics for 192.168.206.100: Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 0ms, Average = 0ms
如果计算机名很多的时候,可以利用bat批量ping获取ip:
)
最后可以把所有得到domain admins账号再net user 下,为这些信息按内容分别建立文件进行分析。
例如:
Users.txt 存放和用户信息有关的内容
Group.txt 存放和分组信息相关的内容
上述命令都是最基本的,也只能获取到最基本的信息。命令就不过多讲解了。参考:
内网***常用命令:
https://wenku.baidu.com/view/b25fd9de5022aaea998f0ff4.html
信息收集的姿势:
人事组织结构图
例如:
像这种人事组织结构图,很多公司和企业的外部站点上就有。然后结合分析人事资料里相关员工全称与域内用户名对应关系,就能很快定位到需要定位的人员使用的机器。
内部邮箱
如果你能进某个用户内部邮箱,也可以从邮件头提取有用的信息。找寻跟目标用户来往的邮件,仔细查看邮件头。“X-Originating-IP”头经常会出现,这就可以让你追踪到目标IP。
工具
常用工具:Dsquery/Dsget,Ldifde,Csvde,Adexplorer,Adfind,wmi,powershell…
注:控制扫描的频率和速度,可以大大降低触发IDS的风险,针对windows机器,可以考虑用wmi脚本和powershell脚本进行扫描,低频扫描可以很容易的绕过IDS的规则,同时可以考虑使用内网管理工具使用的相同协议进行扫描探测。Tips:
内网无工具扫描
一条 cmd 命令解决:
for /l %i in (1,1,255) do @ping 192.168.1.%i -w 1 -n 1 | find /i "ttl"
ping 整个 c 段,只输出有响应的主机。
% H" g% Q+ _6 q- P7 t
更变态的:
4 o4 g8 X- v9 x& w
域机器对应 IP
FOR /F "eol=- tokens=1 delims=\ " %a IN ('net view') DO @(echo name: %a, ip: & ping %a -w 1 -n 1 | find /i "ttl" & echo.)
把 net view 的结果,挨个 ping 一遍,并输出机器名和 ip 地址。
找主机名
for /l %i in (1,1,255) do @ping -a 10.0.1.%i -w 1 -n 1 | find /i "Pinging"
B 段查找
for /l %i in (1,1,255) do @ping -a 10.0.%i.1 -w 1 -n 1 | find /i "Pinging"
Win7
for /l %i in (1,1,255) do @ping -a 10.0.1.%i -w 1 -n 1 | find /i "Pinging"for /l %i in (1,1,255) do @ping -a 10.0.%i.1 -w 1 -n 1 | find /i "Pinging"
改成
for /l %i in (1,1,255) do @ping -a 10.0.1.%i -w 1 -n 1 | find /i "Ping"for /l %i in (1,1,255) do @ping -a 10.0.%i.1 -w 1 -n 1 | find /i "Ping"
就可以兼容 Win7 了。(Win7 ping -a 输出结果关键词为 “Ping”)
另外findstr /i “pinging” 或 findstr /i “ping” 可以换成 findstr “[” 的 可以适合多语言环境
0x03 文件定位
结合服务器定位总结出文件定位的大致思路:
定位人力资源主管个人机
定位人力资源相关文档存放位置
从人力资源文档中找相关人
定位相关人的机器
监视相关人工作时存放文档的位置
列出存放文档服务器的目录
文件定位需要注意的点:
产品名称
内部名称
项目负责人
项目团队
生产部(分公司,工厂,代工厂)
经验
FTP
SMB
DC\NETLOGON\
产品管理系统(仓库管理系统)
各种数据库
其他服务器(分公司,工厂,代工厂)
定位文件服务器请参考上一节定位服务器(机器),定位到文件服务器和某个人,对于文件定位来说应该会事半功倍。这里就不过多叙述了。
参考:
后******的信息收集:
http://www.mottoin.com/88117.html
0x04 管理员定位
工具
psloggedon.exe
系统自带工具。通过检验注册表里HKEY_USERS的key值来查询谁登陆过机器,同样也调用到了NetSessionEnum API。某些功能需要管理员权限
netsess.exe
netsess.exe的原理也是调用NetSessionEnum API,并且在远程主机上无需管理员权限。
PVEFindADUser.exe
用于枚举域用户以及登陆过特定系统的用户,需要管理员权限。工具描述:corelan
netview.exe
使用WinAPI枚举系统,利用 NetSessionEnum 来找寻登陆sessions, 利用NetShareEnum来找寻共享 , 利用 NetWkstaUserEnum 来枚举登陆的用户。它也能查询共享入口和有价值用户,还能使用延迟和抖动。绝大部分功能不需要管理员权限。
Nmap的Nse脚本
如果你有域账户或者本地账户,你可以使用Nmap的smb-enum-sessions.nse 引擎来获取远程机器的登录session,并且不需要管理员权限。
参考:
nmap加载nse脚本在内网***中的使用-上:
http://www.mottoin.com/85401.html
nmap加载nse脚本在内网***中的使用-下:
http://www.mottoin.com/85413.html
Smbexec&Veil-Pillage
然后Smbexec有个 checkda模块,它可以检测域管进程和域管登陆。Veil-Pillage有它的 user_hunter 和group_hunter 模块,这两个工具都需要管理员权限。
hunter
hunter是一款利用 Windows API 调用来枚举跳板机上的用户登录信息的工具
Active Directory
你可以通过AD信息来识别一些连接到服务器的用户
参考:
http://www.harmj0y.net/blog/redteaming/trusts-you-might-have-missed/
http://www.sixdub.net/2014/11/offensive-event-parsing-bringing-home-trophies/
PowerShell
上面也曾提到针对windows机器,可以考虑用wmi脚本和powershell脚本进行扫描,低频扫描可以很容易的绕过IDS的规则。PowerShell有很多方法Windows Api并且绕过白名单。
参考:
通过PowerShell访问Windows Api
http://www.mottoin.com/89568.html
@mattifestation
http://twitter.com/mattifestation
PowerView
PowerView 里面有一些功能可以辅助找寻定位关键用户。要找到目标对应的用户时Get-UserProperties 将会提取所有用户的属性,并且Invoke-UserFieldSearch可以根据通配符来找寻特定用户的相关属性。这可以缩小目标搜索范围。比如说:我们使用这些功能来找Linux管理员组和其相关的成员,就可以追踪和键盘记录他们的putty/ssh会话。
Invoke-UserHunter 功能可以找到域内特定用户群。它支持一个用户名,用户列表,或域组查询,并支持一个主机列表或查询可用的主机域名。它会使用 Get-NetSessions 和Get-NetLoggedon(调用NetSessionEnum和 NetWkstaUserEnum API) 对每个服务器跑一遍而且会比较结果筛选出目标用户集。而且这个工具不需要管理员权限。
命令参考:
Get-NetGroups -> Get-NetGroupGet-UserProperties -> Get-UserPropertyInvoke-UserFieldSearch -> Find-UserFieldGet-NetSessions -> Get-NetSessionInvoke-StealthUserHunter -> Invoke-UserHunter -StealthInvoke-UserProcessHunter -> Invoke-ProcessHunter -Username XGet-NetProcesses -> Get-NetProcessGet-UserLogonEvents -> Get-UserEventInvoke-UserEventHunter -> Invoke-EventHunter
Invoke-StealthUserHunter 只要一个查询就可以获取域内所有用户, 从user.HomeDirectories提取所有用户, 并且会对每个服务器进行Get-NetSessions 获取。无需使用 Invoke-UserHunter对每台机器操作,这个办法的隐蔽性就更高一点,但是涉及到的机器面不一定那么全。
一般默认使用Invoke-StealthUserHunter ,除非找不到我们所需,才会去使用Invoke-UserHunter方法。
Invoke-UserProcessHunter是PowerView 的新功能。利用Get-NetProcesses cmdlet 来枚举远程机器的tasklists和进程寻找目标用户。这个枚举功能需要管理员权限。
Get-UserLogonEvents cmdlet可以查询查询登录事件(如:ID 4624)远程主机,Invoke-UserEventHunter 查询特定用户在域控上面的登陆日志,需要域管理权限。
参考:
The Diamond Model and Network Based Threat Replication
http://www.sixdub.net/2014/11/offensive-event-parsing-bringing-home-trophies/
其他一些姿势
内部邮箱
如果你能进某个用户内部邮箱,也可以从邮件头提权有用的信息。找寻跟目标用户来往的邮件,仔细查看邮件头。“X-Originating-IP”头经常会出现,这就可以让你追踪到目标IP。
查找域管进程
Scott Sutherland (@_nullbind) 2012年写了篇查找域管进程的文章。 其中详细讲述了如何使用tasklist和nbtscan的批处理来扫描机器及用户。不过远程tasklist的时候,需要本地管理员权限。
0x05 总结
内网***,不是简单的耍流氓的说”可内网***”或者“内网漫游”,有着更高更深的责任和需求,有着更多设备和报警及防护软件(如Bit9,惠普ARCsight,Mandiant等等)的突破,有着更多网络拓扑和结构需要清晰洞察,有着更多的域控和域需要占领。 定位到内网管理员或者管理员上过的机器或者定位到文件和某个人,对于内网***来说应该会事半功倍。
转载于:https://blog.51cto.com/14071176/2322982
内网***测试定位技术总结相关推荐
- 【内网安全-隧道技术】SMB、ICMP、DNS隧道、SSH协议
前言: 介绍: 博主:网络安全领域狂热爱好者(承诺在CSDN永久无偿分享文章). 殊荣:CSDN网络安全领域优质创作者,2022年双十一业务安全保卫战-某厂第一名,某厂特邀数字业务安全研究员,edus ...
- 【引用】内网安全数据保密技术分析与比较
内网安全数据保密技术分析与比较 邹翔① 王志海②,李志涛② (①公安部第三研究所上海 200031: ②北京明朝万达科技有限公司,北京 100000) [摘要]本文通过对目前主要的内网安全数据保密关键 ...
- Linux工作笔记035---linux内网测试访问外网网速_外网测试访问内网网速
JAVA技术交流QQ群:170933152 Linux内网测试访问外网网速:,可以用下载命令测试 外网访问内网,可以用下载工具下载内网的一个文件看就行. 顺便提一下.如果下载ftp服务器上的文件,可以 ...
- 17、内网渗透测试定位技术总结
0x01 前言 说起内网定位,无论针对内网查找资料还是针对特殊人物都是非常实用的一项技术.这里把目前能够利用的手段&工具都一一进行讲解. 0x02 服务器(机器)定位 收集域以及域内用户信息 ...
- 内网渗透攻击技术的利用
DCSync 是什么 在域环境中,不同域控制器(DC)之间,每 15 分钟都会有一次域数据的同步.当一个域控制器(DC 1)想从其他域控制器(DC 2)获取数据时,DC 1 会向 DC 2 发起一个 ...
- 内网穿透的技术解决方案
1.NAT地址转换,解决的是IPV4地址不够用的问题: [硬核]公网访问?内网穿透!零经验上手!_哔哩哔哩_bilibili 2. 公网向内网发送数据的问题如何解决? 设置端口转发 3.多层NAT,解 ...
- 内网安全-隧道技术-防火墙限制协议绕过-文件传输
隧道技术: 一种通过使用互联网络基础设施在网络之间传递数据的方式,包括数据封装. 传输和解包在内的全过程.使用隧道传递的数据(或负载)可以是不同协议的数据帧或包. 封装: 隧道协议将这些其他协议的数据 ...
- 内网攻防经典技术备忘录
前言 很早就想专门写一篇关于内网的文章,一直没有腾出空来,万万没想到,写下这篇文章的时候,竟然是我来某实验室实习的时间段:) 信息搜集 nmap扫描实时存活的ip nmap 10.1.1.1 --op ...
- 【内网流量操控技术四】DNS隧道之iodine
前言 上篇文章通过dns2tcp实验,学习了绕过防火墙53端口udp协议限制出站策略的原理.但由于dns2tcp是一款在类unix操作系统上使用的工具,并不具有跨平台性.在渗透测试中,我们经常会遇到w ...
最新文章
- java http客户端_java 11 标准Java异步HTTP客户端
- Netty实战六之ChannelHandler和ChannelPipeline
- 【工具使用系列】关于 MATLAB 电路与系统分析,你需要知道的事
- wpf调用其他项目界面_WPF开发Prism框架实现一个简单播放器
- 深度学习(十)——花式卷积(2)
- GWT的渐进式Web应用程序配方
- 流式数据分析_流式大数据分析
- matlab 控制实验指导,智能控制系统-实验指导书-实验一-BP算法的MATLAB实现
- android封装aidl接口,Android远端接口AIDL及服务回调用法
- Unity 3D实现帧同步技术
- 第一次开卡SSD硬盘成功,主控为SM2258XT(附软件)
- 【编译原理】自上而下语法分析(C/C++源码+实验报告)
- linux/windows_powershell/bash_硬链接Hardlink/软连接(符号链接)创建以及注意事项/powershell_获取文件绝对路径/linux符号链接检查
- Macbook无法登陆APP Store解决办法
- 终身成长----“成长型思维”
- ‘\0‘到底是什么?
- mysql修改系统日期_修改系统和MySQL时区
- 关于钢材出口关税的问题
- iOS 通过定位获取常驻后台
- 有幸被推荐到首批Oracle YEP计划
热门文章
- 《城市大脑全球标准研究报告》发布会将于12月23号在北京举办
- 科普长文揭秘生命为何会具有主观能动性
- Space X和NASA到底有什么关系?
- AI战“疫”!人工智能在疫情中的重要作用
- AIoT的生死局:未来的AIoT很赚钱,但目前的AI+IoT很花钱
- 《互联网人求职图鉴》:这类人才“最吃香”,最高薪编程语言出炉!
- Sudo 漏洞隐患不断,macOS 也受牵连!
- 抓紧!抓紧!CSDN年终重榜福利来了~人手一份,快来投稿!!
- 富士康遭黑客巨额勒索 企业如何应对数据安全风险?
- ​“好师父”如何破解大学生就业难题