Dim*_*Ari 23 security command-line
我是 Linux 和 Ubuntu 的新手。当我不知道如何用这个操作系统做一些事情时,我在网上搜索并询问 Ubuntu 并总能找到答案。
但有时它不是一个很好的答案,也不是完整的教程。无论如何我都按照说明进行操作,但我不知道所有命令的含义。
所以我的问题是:
A.B*_*.B. 45
TL;DR不,您不是 100% 安全的。或者换句话说,三思而后行。;)
不要在不了解基础知识的情况下执行代码片段。使用man更多地了解一个命令或程序。如果您不明白,请使用 Google 或其他搜索门户。如果您仍然怀疑,请不要执行代码。
你信任我吗?然后运行:
man man
Run Code Online (Sandbox Code Playgroud)
好的,不危险,你看手册页 man
但是下面的代码呢,你相信我吗?
$(perl -MMIME::Base64 -0777ne 'print decode_base64($_)' <<< "ZWNobyAnQk9PSCEnCg==")
Run Code Online (Sandbox Code Playgroud)
不是?好主意。让我们分解代码:
perl
Perl 语言解释器
-MMIME::Base64
base64 字符串的编码和解码
-0777ne
-0777 - 将行分隔符更改为 undef,让我们可以清空文件,一次性将所有行提供给 Perl。
-e - (execute) 标志允许我们在命令行上指定我们想要运行的 Perl 代码。
-n - 将输入逐行输入到 Perl。
'print decode_base64($_)'- 解码一个字符串,字符串保存在$_.
"ZWNobyAnQk9PSCEnCg=="- 和这个?这是什么?
让我们开始测试。
我们知道,它类似于 base64 并且看起来是经过编码的。因此解码字符串:
base64 --decode <<< "ZWNobyAnQk9PSCEnCg=="
Run Code Online (Sandbox Code Playgroud)
输出是……好吧,不是很危险:
echo 'BOOH!'
Run Code Online (Sandbox Code Playgroud)
现在,我们可以用 perl 做同样的事情
perl -MMIME::Base64 -0777ne 'print decode_base64($_)' <<< "ZWNobyAnQk9PSCEnCg=="
Run Code Online (Sandbox Code Playgroud)
输出是,多么令人惊讶:
echo 'BOOH!'
Run Code Online (Sandbox Code Playgroud)
但这有危险吗?这是危险的:
$(…)
Run Code Online (Sandbox Code Playgroud)
此构造执行圆括号中命令的输出。
让我们试试看,你相信我吗?
$(perl -MMIME::Base64 -0777ne 'print decode_base64($_)' <<< "ZWNobyAnQk9PSCEnCg==")
Run Code Online (Sandbox Code Playgroud)
和什么有关
c3VkbyBraWxsYWxsIG5hdXRpbHVzCg==
Run Code Online (Sandbox Code Playgroud)
试试看……你相信我吗?
小智 5
我对此的一般假设是肯定的,因为 askUbuntu 的人通常知道他们的方法。
然而,总的来说,我总是喜欢了解我在做什么,所以如果你得到一个你不熟悉的命令/语法的答案 - 只是要求更广泛的解释。我敢肯定,首先提供帮助的人不会介意分享他的进一步知识。
祝你好运,你对 Linux 做出了正确的选择——比竞争对手更好!:-)
| 归档时间: |
|
| 查看次数: |
4398 次 |
| 最近记录: |