小编Kev*_*777的帖子

什么 env x='() { :;}; 命令' bash 做,为什么不安全?

bash 中明显存在漏洞(CVE-2014-6271):Bash 特制环境变量代码注入攻击

我试图弄清楚发生了什么,但我不完全确定我理解它。如何echo在单引号中执行?

$ env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
vulnerable
this is a test
Run Code Online (Sandbox Code Playgroud)

编辑 1:打补丁的系统如下所示:

$ env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
this is a test
Run Code Online (Sandbox Code Playgroud)

编辑 2:有一个相关的漏洞/补丁:CVE-2014-7169,它使用了一个稍微不同的测试:

$ env 'x=() { :;}; echo vulnerable' 'BASH_FUNC_x()=() { :;}; echo vulnerable' bash -c …
Run Code Online (Sandbox Code Playgroud)

bash vulnerability shellshock

246
推荐指数
5
解决办法
11万
查看次数

脚本可以执行但不可读吗?

如果没有读取权限,是否可以执行脚本?在 root 模式下,我制作了一个脚本,我希望其他用户执行此脚本但不读取它。我确实chmod禁止读写但允许执行,但是在用户模式下,我看到消息说:权限被拒绝。

permissions executable shell-script

73
推荐指数
4
解决办法
7万
查看次数

zsh 中有哪些功能而 bash 中缺少哪些功能,反之亦然?

作为 Linux 用户,我一直只使用 bash,因为它是我使用的每个发行版的默认设置。使用其他 Unix 系统(如 BSD)的人似乎更频繁地使用其他 shell。为了多学习一点,我决定尝试一下 zsh。

作为 bash 用户:

  • 我会错过哪些功能?
  • 我应该注意哪些?

bash zsh

63
推荐指数
4
解决办法
9392
查看次数

使 cd 自动 ls

我发现我经常做以下事情:

%> cd bla/bla
%> ls
Run Code Online (Sandbox Code Playgroud)

我希望每当我cd进入目录时它会自动执行ls.

我摆弄.bashrc了一段时间,但不知道如何让它发生。

command-line bash cd-command

57
推荐指数
4
解决办法
6万
查看次数

如何关闭 X Server,以避免更新 nVidia 驱动程序时出错?

我尝试更新我的 nVidia 驱动程序,但在运行驱动程序安装时出现错误。

查看错误:

  ERROR: You appear to be running an X server; please exit X before            
         installing.  For further details, please see the section INSTALLING   
         THE NVIDIA DRIVER in the README available on the Linux driver         
         download page at www.nvidia.com.
Run Code Online (Sandbox Code Playgroud)

注意:我尝试通过键入来遵循指南,init 3但仍然没有任何变化.. 如何关闭 X 服务器?

所以我可以更新驱动程序

drivers xorg nvidia error-handling

46
推荐指数
3
解决办法
32万
查看次数

如何在所有路径中摆脱 Cygwin 的 /cygdrive 前缀?

我正在从 Git for Windows 附带的 bash shell 切换到 Cygwin,但遇到了一个奇怪的问题。有人认为添加/cygdrive/到所有路径是个好主意,而我认为这是一个非常丑陋的主意。我已经能够确定我可以通过添加部分解决这个问题

mount --change-cygdrive-prefix /
export HOME=/c/Users/BZISAD0
Run Code Online (Sandbox Code Playgroud)

在我的 .bashrc 中,但如果我查看 PATH 变量,所有内容中仍然包含 /cygdrive/。我想我可以编写一个脚本来修复 PATH 但这比我已经在做的更麻烦。我们有了一个更好的办法,我敢确信那里是因为Git的bash shell中使用(据我所知)旧版本的Cygwin,它以某种方式配置为前插/cygdrive无处不在。那么,如何将“Suck”旋钮调为零?

加里·拉森漫画

cygwin path bashrc

40
推荐指数
2
解决办法
3万
查看次数

"openssl dgst -sha1" 产生一个无关的 "(stdin)=" 前缀和尾随换行符

如果你在你的 Unix 上运行这个命令

echo -n "foo" | openssl dgst -sha1
Run Code Online (Sandbox Code Playgroud)

你会得到这个输出:

(stdin)= 0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33
Run Code Online (Sandbox Code Playgroud)

(后跟换行符)。

如何强制 openssl 不显示(stdin)=前缀,并避免尾随换行符?

openssl stdin

38
推荐指数
3
解决办法
2万
查看次数

rm无法删除文件

chmod 777  -R  /mnt  
rm -rf /mnt/*  

rm: cannot remove 'omitted': Read-only file system  
rm: cannot remove 'omitted': Read-only file system  
Run Code Online (Sandbox Code Playgroud)

请告诉我如何做到这一点?

rm readonly

27
推荐指数
2
解决办法
15万
查看次数

如何挂载 mdf 映像,iso9660 不起作用?

我的.mdf图像很少,可以用 挂载Alcohol 120%,但在 Linux 上,这可能吗?

我试过类似的东西mount -o loop -t iso9660 XX.mdf /mnt/iso,但这在这里不起作用,我得到了ISOFS: Unable to identify CD-ROM format.

linux iso

25
推荐指数
2
解决办法
3万
查看次数

打开一个文本文件并让它自行更新

如何打开文本文件并让它自行更新?top工作方式类似。

我想打开一个日志文件并观察它动态更新。

我刚刚试过:

$ tail error.log
Run Code Online (Sandbox Code Playgroud)

但刚刚意识到,它只是向您显示日志文件中的行。

我正在使用 RHEL 5.10

monitoring tail files

24
推荐指数
3
解决办法
3万
查看次数