[username@notebook ~]$ cat foo.sh
#!/bin/bash
echo "$0"
[username@notebook ~]$ ./foo.sh
./foo.sh
[username@notebook ~]$
Run Code Online (Sandbox Code Playgroud)
问题:如何输出“foo.sh”?不管它是如何被执行的。
我们有一个 Ubuntu 12.04/apache 服务器和一个目录在“/var/www/foo”和 root 权限。
有些东西是反复改变这个目录的权限。
问题:我们如何调查,更改权限的原因是什么?
$ printf 'asf .test. afd\nasaf foo-test asfdads\n'
asf .test. afd
asaf foo-test asfdads
$ printf 'asf .test. afd\nasaf foo-test asfdads\n' | grep -w test
asf .test. afd
asaf foo-test asfdads
Run Code Online (Sandbox Code Playgroud)
问题:如何匹配“foo-test”?更准确地说,我如何说“-w”使用“-”作为分隔符,但不要使用“。” ?
或者换句话说,我可以告诉grep
这.
是构成的字符中的话,因此,有没有字的边界之间.
和test
?
或者除了grep还有其他解决方案吗?
在 AIX 上,这将是一个简单的:
chsec -f /etc/security/login.cfg -s usw -a pwd_algorithm=ssha512
Run Code Online (Sandbox Code Playgroud)
问题:但是我们如何将默认密码算法设置为 sha512?
更新:我认为 pwd_algorithm 不支持 ssha512,但它会更好,是的.. 在 Linux 桌面上尝试过:
[root@notebook ~]# john --test -format=ssha512
Will run 4 OpenMP threads
Benchmarking: SSHA512, LDAP [32/64 OpenSSL]... (4xOMP) DONE
Many salts: 3450K c/s real, 858307 c/s virtual
Only one salt: 2826K c/s real, 713696 c/s virtual
[root@notebook ~]#
[root@notebook ~]# john --test -format=bcrypt
Will run 4 OpenMP threads
Benchmarking: bcrypt ("$2a$05", 32 iterations) [Blowfish 32/64 X3]... (4xOMP) DONE
Raw: 1800 c/s …
Run Code Online (Sandbox Code Playgroud) 我们知道使用 sudoedit 更安全*,但是如果我们在 sudoers 中有以下内容会发生什么坏事?
Cmnd_Alias FOO = /bin/ed, /usr/bin/ed, /usr/bin/vi
foouser LOCALHOST = NOPASSWD: NOEXEC: FOO
Run Code Online (Sandbox Code Playgroud)
“foouser”可以转义到 root 提示符吗?- 当然,除此之外,他现在可以编辑 /etc/shadow 文件,将自定义密码散列添加到 root 用户,在大约 3 秒内成为 root..
也许一些魔法使用 LD_PRELOAD 和 ed?具体如何?
*=sudo ed 将以 root 身份运行。但是 sudoedit 将以给定用户身份运行,编辑后的文件将在编辑之前/之后复制。
bash ×1
grep ×1
password ×1
permissions ×1
search ×1
security ×1
shell-script ×1
sudo ×1
sudoedit ×1