2019年4月

恶意软件开发人员通过将恶意代码嵌入到硬件固件中让其更加狡猾,但北卡罗来纳州立大学和德克萨斯大学奥斯汀分校的研究人员已经开发出一种可靠的识别此类入侵的方法。通过测量系统及其中每个组件的功耗,可以确定存在恶意软件的类型。研究由洛克希德马丁公司和国家科学基金会赞助。

微架构攻击的本质使它们很难被发现,但研究人员找到了一种方法来检测它们。台式电脑不是这种创新的主要应用。物联网设备和工业嵌入式系统是重要的用例,这多这种设备没有操作系统,并且仅执行存储在非易失性存储器的一小部分机器代码。在部署到现实世界的大多数嵌入式系统中,防病毒软件甚至都不实用。

监控电源使用本身并不是一个新概念,但是能够与各种系统一起工作的即插即用解决方案的想法很有趣。唯一需要注意的是,写得非常仔细的恶意软件可以尝试表现出正常的功耗。在这些情况下,有时研究人员的工具无法检测到恶意软件的存在。然而,恶意软件窃取数据的速度会减慢 86% 至 97%,这对善于掩盖其踪迹的黑客来说是一个重大损失。

来源:cnBeta.COM

更多资讯

人民日报海外版:对 App 乱象“零容忍”

不同意授权某 App(移动互联网应用程序),许多功能就无法使用;在某 App 留下个人信息后很快收到骚扰电话;打开一款社交软件却看到大量涉黄信息……部分 App 乱象令许多用户苦不堪言。日前,国家网信办等相关部门果断出手,对 App 乱象“零容忍”,为网民营造风清气正的网络空间。

来源: 人民日报海外版

详情: http://t.cn/EaFhRjx

泄露 5 千万用户数据?京东回应:请勿造谣传谣

昨今日京东官方微博@京东发言人针对外界谣传“京东泄露的 5 千万用户数据”一事,回应称:这些数据不是京东账号数据,请勿造谣传谣。京东称,经过示例数据查验,确认这些数据不是京东账号数据,另外还提醒:买卖公民个人隐私数据涉嫌触犯刑法。

来源: 凤凰网科技

详情: http://t.cn/EaFhE3e

美军警告日本:F35 或遭黑客攻击,飞行员驾机会昏迷

日本首架坠毁的 F-35A 隐身战斗机和机上飞行员至今仍未找到,但由美国方面主导的事故调查却取得重大进展。日本经济新闻社 4 月 25 日披露,美国军方向日本防卫省发出紧急警告,称 F-35 战机可能受到了黑客攻击。目前美方已将战机坠毁的原因归结为“突发性系统故障”,其中机载氧气生成系统出问题的可能性最大。也就是说,至今仍失联的 41 岁空自少校飞行员在驾机时可能因缺氧而昏迷,F-35A 战机在失去人工控制后坠毁。

来源:新浪军事

详情: http://t.cn/EaFhmyX

马国 VEP 网站漏洞 新加坡驾车人士资料或遭泄露

马来西亚陆路交通局的外国车辆入境准证(VEP)网站存在安全漏洞,包括新加坡驾车人士在内的数以千计的外籍驾车人士的个人资料,可能遭泄露。

来源: 联合早报

详情: http://t.cn/EaFhucK

(信息来源于网络,安华金和搜集整理)

这个开源解决方案可以简单而有效地监控你的云基础设施。

Sensu 是一个开源的基础设施和应用程序监控解决方案,它可以监控服务器、相关服务和应用程序健康状况,并通过第三方集成发送警报和通知。Sensu 用 Ruby 编写,可以使用 RabbitMQRedis 来处理消息,它使用 Redis 来存储数据。

如果你想以一种简单而有效的方式监控云基础设施,Sensu 是一个不错的选择。它可以与你的组织已经使用的许多现代 DevOps 组件集成,比如 SlackHipChatIRC,它甚至可以用 PagerDuty 发送移动或寻呼机的警报。

Sensu 的模块化架构意味着每个组件都可以安装在同一台服务器上或者在完全独立的机器上。

结构

Sensu 的主要通信机制是 Transport。每个 Sensu 组件必须连接到 Transport 才能相互发送消息。Transport 可以使用 RabbitMQ(在生产环境中推荐使用)或 Redis。

Sensu 服务器处理事件数据并采取行动。它注册客户端并使用过滤器、增变器和处理程序检查结果和监视事件。服务器向客户端发布检查说明,Sensu API 提供 RESTful API,提供对监控数据和核心功能的访问。

Sensu 客户端执行 Sensu 服务器安排的检查或本地检查定义。Sensu 使用数据存储(Redis)来保存所有的持久数据。最后,Uchiwa 是与 Sensu API 进行通信的 Web 界面。

 title=

安装 Sensu

条件

  • 一个 Linux 系统作为服务器节点(本文使用了 CentOS 7)
  • 要监控的一台或多台 Linux 机器(客户机)

服务器侧

Sensu 需要安装 Redis。要安装 Redis,启用 EPEL 仓库:

$ sudo yum install epel-release -y

然后安装 Redis:

$ sudo yum install redis -y

修改 /etc/redis.conf 来禁用保护模式,监听每个地址并设置密码:

$ sudo sed -i 's/^protected-mode yes/protected-mode no/g' /etc/redis.conf
$ sudo sed -i 's/^bind 127.0.0.1/bind 0.0.0.0/g' /etc/redis.conf
$ sudo sed -i 's/^# requirepass foobared/requirepass password123/g' /etc/redis.conf

启用并启动 Redis 服务:

$ sudo systemctl enable redis
$ sudo systemctl start redis

Redis 现在已经安装并准备好被 Sensu 使用。

现在让我们来安装 Sensu。

首先,配置 Sensu 仓库并安装软件包:

$ sudo tee /etc/yum.repos.d/sensu.repo << EOF
[sensu]
name=sensu
baseurl=https://sensu.global.ssl.fastly.net/yum/\$releasever/\$basearch/
gpgcheck=0
enabled=1
EOF

$ sudo yum install sensu uchiwa -y

让我们为 Sensu 创建最简单的配置文件:

$ sudo tee /etc/sensu/conf.d/api.json << EOF
{
  "api": {
        "host": "127.0.0.1",
        "port": 4567
  }
}
EOF

然后,配置 sensu-api 在本地主机上使用端口 4567 监听:

$ sudo tee /etc/sensu/conf.d/redis.json << EOF
{
  "redis": {
        "host": "<IP of server>",
        "port": 6379,
        "password": "password123"
  }
}
EOF


$ sudo tee /etc/sensu/conf.d/transport.json << EOF
{
  "transport": {
        "name": "redis"
  }
}
EOF

在这两个文件中,我们将 Sensu 配置为使用 Redis 作为传输机制,还有 Reids 监听的地址。客户端需要直接连接到传输机制。每台客户机都需要这两个文件。

$ sudo tee /etc/sensu/uchiwa.json << EOF
{
   "sensu": [
        {
        "name": "sensu",
        "host": "127.0.0.1",
        "port": 4567
        }
   ],
   "uchiwa": {
        "host": "0.0.0.0",
        "port": 3000
   }
}
EOF

在这个文件中,我们配置 Uchiwa 监听每个地址(0.0.0.0)的端口 3000。我们还配置 Uchiwa 使用 sensu-api(已配置好)。

出于安全原因,更改刚刚创建的配置文件的所有者:

$ sudo chown -R sensu:sensu /etc/sensu

启用并启动 Sensu 服务:

$ sudo systemctl enable sensu-server sensu-api sensu-client
$ sudo systemctl start sensu-server sensu-api sensu-client
$ sudo systemctl enable uchiwa
$ sudo systemctl start uchiwa

尝试访问 Uchiwa 网站:http://<服务器的 IP 地址>:3000

对于生产环境,建议运行 RabbitMQ 集群作为 Transport 而不是 Redis(虽然 Redis 集群也可以用于生产环境),运行多个 Sensu 服务器实例和 API 实例,以实现负载均衡和高可用性。

Sensu 现在安装完成,让我们来配置客户端。

客户端侧

要添加一个新客户端,你需要通过创建 /etc/yum.repos.d/sensu.repo 文件在客户机上启用 Sensu 仓库。

$ sudo tee /etc/yum.repos.d/sensu.repo << EOF
[sensu]
name=sensu
baseurl=https://sensu.global.ssl.fastly.net/yum/\$releasever/\$basearch/
gpgcheck=0
enabled=1
EOF

启用仓库后,安装 Sensu:

$ sudo yum install sensu -y

要配置 sensu-client,创建在服务器中相同的 redis.jsontransport.json,还有 client.json 配置文件:

$ sudo tee /etc/sensu/conf.d/client.json << EOF
{
  "client": {
        "name": "rhel-client",
        "environment": "development",
        "subscriptions": [
        "frontend"
        ]
  }
}
EOF

name 字段中,指定一个名称来标识此客户机(通常是主机名)。environment 字段可以帮助你过滤,而 subscriptions 定义了客户机将执行哪些监视检查。

最后,启用并启动服务并签入 Uchiwa,因为客户机会自动注册:

$ sudo systemctl enable sensu-client
$ sudo systemctl start sensu-client

Sensu 检查

Sensu 检查有两个组件:一个插件和一个定义。

Sensu 与 Nagios 检查插件规范兼容,因此无需修改即可使用用于 Nagios 的任何检查。检查是可执行文件,由 Sensu 客户机运行。

检查定义可以让 Sensu 知道如何、在哪以及何时运行插件。

客户端侧

让我们在客户机上安装一个检查插件。请记住,此插件将在客户机上执行。

启用 EPEL 并安装 nagios-plugins-http

$ sudo yum install -y epel-release
$ sudo yum install -y nagios-plugins-http

现在让我们通过手动执行它来了解这个插件。尝试检查客户机上运行的 Web 服务器的状态。它应该会失败,因为我们并没有运行 Web 服务器:

$ /usr/lib64/nagios/plugins/check_http -I 127.0.0.1
connect to address 127.0.0.1 and port 80: Connection refused
HTTP CRITICAL - Unable to open TCP socket

不出所料,它失败了。检查执行的返回值:

$ echo $?
2

Nagios 检查插件规范定义了插件执行的四个返回值:

插件返回码状态
0OK
1WARNING
2CRITICAL
3UNKNOWN

有了这些信息,我们现在可以在服务器上创建检查定义。

服务器侧

在服务器机器上,创建 /etc/sensu/conf.d/check_http.json 文件:

{
  "checks": {
    "check_http": {
      "command": "/usr/lib64/nagios/plugins/check_http -I 127.0.0.1",
      "interval": 10,
      "subscribers": [
        "frontend"
      ]
    }
  }
}

command 字段中,使用我们之前测试过的命令。interval 会告诉 Sensu 这个检查的频率,以秒为单位。最后,subscribers 将定义执行检查的客户机。

重新启动 sensu-apisensu-server 并确认新检查在 Uchiwa 中可用。

$ sudo systemctl restart sensu-api sensu-server

接下来

Sensu 是一个功能强大的工具,本文只简要介绍它可以干什么。参阅文档了解更多信息,访问 Sensu 网站了解有关 Sensu 社区的更多信息。


via: https://opensource.com/article/18/8/getting-started-sensu-monitoring-solution

作者:Michael Zamot 选题:lujun9972 译者:MjSeven 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Quick News

微软正在考虑放弃其 Windows 密码过期策略

微软考虑在 Windows 废除要求用户定期更改其登录密码的策略,以让用户养成使用更加鲁棒的密码。微软表示,现有的密码更改政策是“非常低价值的古老而过时的缓解”,该公司不“觉得它有用”。

定期密码到期只是针对密码(或散列)在其有效时间内被盗并且被未经授权使用的概率而制定的策略。如果密码永远不会被盗,则无需使密码过期。如果你有证据证明密码被盗,你应该立即采取行动,而不是等待到期以解决问题。【TechCrunch】

Godaddy 关闭了超过了 15000 个 Spam 子域名

Godaddy 和 安全公司 Palo Alto Networks 联合,处理了超过 15000 个子域名,这些子域名过去被用于虚假营销。【Wired】

微软将比我们想象的更快在 macOS 上发布基于 Chrome 内核的 Edge

根据德国媒体 Windows United 报道,在 Windows 2016 上访问新的 Edge 浏览器的官网时,会提醒暂时不支持该系统,并提示目前仅支持 Windows 和 macOS ,由此推断出微软应该很快放出 macOS 下基于 Chrome 内核的 Edge 浏览器。【Windows United】

AWS 进入香港云计算市场

亚马逊在本周四开放了新的 Region —— 香港 ,从今天开始,用户可以使用 AWS 的香港服务。【ZDNet】

除了阿里云的香港、腾讯云的香港,目前我们在香港云服务器上有了新的选择。对于国内开发者来说,是一大利好。

援引外媒 Motherboard 报道,一名黑客成功入侵了两款 GPS 定位追踪应用,从而允许让他监控数万辆汽车的位置,甚至能够关闭部分汽车的引擎。这名叫做 L&M 的黑客成功入侵了 7000 多个 iTrack 账号以及超过 20,000 个 ProTrack 账户,这两款应用被用于监控和管理车队的。该黑客可以跟踪南非,摩洛哥,印度和菲律宾等少数国家的车辆。

根据部分 GPS 定位追踪设备厂商的设定,如果车辆停靠或者车速低于每小时 12 英里就可以进行远程关闭汽车引擎,而黑客在成功入侵之后可以操控擅自关闭这些汽车引擎。通过对 ProTrack 和 iTrack 的 Android 应用程序进行逆向工程,L&M 表示所有客户在注册时都会获得默认密码 123456。

随后他使用应用的 API 强行调取了数百万用户名称,然后使用定制的脚本使用这些用户名和默认秘密进行登陆。这允许他控制了数万个使用默认密码的账号,并提取了相关信息。

根据 L&M 提交给 Motherboard 的用户数据样本来看,黑客从 ProTrack 和 iTrack 客户那里搜集了大量信息,包括他们所使用的 GPS 跟踪设备的名称、型号、设备的唯一 ID 号(技术上称为 IMEI 号码)、用户名、真实姓名、电话号码、电子邮件地址和物理地址。

L&M 表示他的攻击目标是公司,而不是客户。正是这些公司的疏忽导致客户存在安全风险,它们只是想要牟利,而并不想要保护他们的客户。L&M 表示:“我绝对可以在全球范围内造成大规模的交通事故。我已经控制了上万辆汽车,只要我点击我就可以关闭他们的汽车引擎。”但是 L&M 表示从未关闭过汽车引擎,因为他认为这样太危险了。

虽然黑客没有证明他能够关闭汽车引擎,但是 Concox(ProTrack GPS 和 iTrack 的 GPS 设备制造商之一)的发言人向Motherboard 确认如果车辆低于每小时 20 公里(大约每小时12英里),可以远程关闭汽车引擎。根据黑客提供的截图,这些应用程序具有“停止引擎”的功能。

来源:cnBeta.COM

更多资讯

安全漏洞允许攻击者从高通芯片窃取私钥

高通芯片组被广泛用于智能手机和平板,但这些芯片组的一个安全漏洞将允许攻击者从被称为 Qualcomm Secure Execution Environment(QSEE)的芯片安全域窃取私钥和加密密钥。

来源: solidot.org

详情: http://t.cn/Ea3nsCb

Mac 恶意软件威胁在 2019 年一季度上涨超 60%,广告软件涨幅更甚

根据 Malwarebytes 新发布的报告,针对 Mac 用户的恶意软件威胁,已经在短短 3 个月内出现了大幅增长。与 2018 年四季度相比,今年一季度检出的恶意软件威胁增加了 60% 以上。与此同时,广告软件的涨幅,更是飙过了 200% 。

Malwarebytes 在新一季的《网络犯罪策略与技术报告》中指出,针对消费者的威胁数量在下降,基于恶意软件的加密和勒索软件的数量也在上一季显著减少,整体恶意软件的检出量也下降。

来源: cnBeta.COM
详情: http://t.cn/Ea3mPzY

FTC 将可能针对隐私丑闻对 Facebook 开出高达 50 亿美元罚单

据外媒报道,在过去一年多的时间里 Facebook 一直在处理公司与隐私相关的丑闻,而这给这家社交网络公司造成了严重的经济损失。当地时间周三,Facebook 公布了 2019 年第一季度业绩报告。报告中,这家公司披露,美国联邦贸易委员会(FTC)将可能会被处以数十亿美元的罚款。

来源: cnBeta.COM

详情: http://t.cn/Ea3mzSr

(信息来源于网络,安华金和搜集整理)

了解 Mercurial 的基础知识,它是一个用 Python 写的分布式版本控制系统。

Mercurial 是一个用 Python 编写的分布式版本控制系统。因为它是用高级语言编写的,所以你可以用 Python 函数编写一个 Mercurial 扩展。

官方文档中说明了几种安装 Mercurial 的方法。我最喜欢的一种方法不在里面:使用 pip。这是开发本地扩展的最合适方式!

目前,Mercurial 仅支持 Python 2.7,因此你需要创建一个 Python 2.7 虚拟环境:

python2 -m virtualenv mercurial-env
./mercurial-env/bin/pip install mercurial

为了让命令简短一些,以及满足人们对化学幽默的渴望,该命令称之为 hg

$ source mercurial-env/bin/activate
(mercurial-env)$ mkdir test-dir
(mercurial-env)$ cd test-dir
(mercurial-env)$ hg init
(mercurial-env)$ hg status
(mercurial-env)$

由于还没有任何文件,因此状态为空。添加几个文件:

(mercurial-env)$ echo 1 > one
(mercurial-env)$ echo 2 > two
(mercurial-env)$ hg status
? one
? two
(mercurial-env)$ hg addremove
adding one
adding two
(mercurial-env)$ hg commit -m 'Adding stuff'
(mercurial-env)$ hg log
changeset: 0:1f1befb5d1e9
tag: tip
user: Moshe Zadka <[[email protected]][4]>
date: Fri Mar 29 12:42:43 2019 -0700
summary: Adding stuff

addremove 命令很有用:它将任何未被忽略的新文件添加到托管文件列表中,并移除任何已删除的文件。

如我所说,Mercurial 扩展用 Python 写成,它们只是常规的 Python 模块。

这是一个简短的 Mercurial 扩展示例:

from mercurial import registrar
from mercurial.i18n import _

cmdtable = {}
command = registrar.command(cmdtable)

@command('say-hello',
[('w', 'whom', '', _('Whom to greet'))])
def say_hello(ui, repo, `opts):
ui.write("hello ", opts['whom'], "\n")

简单的测试方法是将它手动加入虚拟环境中的文件中:

`$ vi ../mercurial-env/lib/python2.7/site-packages/hello_ext.py`

然后你需要启用扩展。你可以仅在当前仓库中启用它:

$ cat >> .hg/hgrc
[extensions]
hello_ext =

现在,问候有了:

(mercurial-env)$ hg say-hello --whom world
hello world

大多数扩展会做更多有用的东西,甚至可能与 Mercurial 有关。 repo 对象是 mercurial.hg.repository 的对象。

有关 Mercurial API 的更多信息,请参阅官方文档。并访问官方仓库获取更多示例和灵感。


via: https://opensource.com/article/19/4/getting-started-mercurial

作者:Moshe Zadka 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

本文向你展示了如何在 Ubuntu 和其他 Linux 发行版中创建一个 zip 文件夹。终端和 GUI 方法都有。

zip 是最流行的归档文件格式之一。使用 zip,你可以将多个文件压缩到一个文件中。这不仅节省了磁盘空间,还节省了网络带宽。这就是为什么你几乎一直会看到 zip 文件的原因。

作为普通用户,大多数情况下你会在 Linux 中解压缩文件夹。但是如何在 Linux 中压缩文件夹?本文可以帮助你回答这个问题。

先决条件:验证是否安装了 zip

通常 zip) 已经安装,但验证下也没坏处。你可以运行以下命令来安装 zipunzip。如果它尚未安装,它将立即安装。

sudo apt install zip unzip

现在你知道你的系统有 zip 支持,你可以继续了解如何在 Linux 中压缩一个目录。

在 Linux 命令行中压缩文件夹

zip 命令的语法非常简单。

zip [option] output_file_name input1 input2

虽然有几个选项,但我不希望你将它们混淆。如果你只想要将一堆文件变成一个 zip 文件夹,请使用如下命令:

zip -r output_file.zip file1 folder1

-r 选项将递归目录并压缩其内容。输出文件中的 .zip 扩展名是可选的,因为默认情况下会添加 .zip。

你应该会在 zip 操作期间看到要添加到压缩文件夹中的文件。

zip -r myzip abhi-1.txt abhi-2.txt sample_directory
  adding: abhi-1.txt (stored 0%)
  adding: abhi-2.txt (stored 0%)
  adding: sample_directory/ (stored 0%)
  adding: sample_directory/newfile.txt (stored 0%)
  adding: sample_directory/agatha.txt (deflated 41%)

你可以使用 -e 选项在 Linux 中创建密码保护的 zip 文件夹

你并不是只能通过终端创建 zip 归档文件。你也可以用图形方式做到这一点。下面是如何做的!

在 Ubuntu Linux 中使用 GUI 压缩文件夹

虽然我在这里使用 Ubuntu,但在使用 GNOME 或其他桌面环境的其他发行版中,方法应该基本相同。

如果要在 Linux 桌面中压缩文件或文件夹,只需点击几下即可。

进入到你想将文件(和文件夹)压缩到一个 zip 文件夹的所在文件夹。

在这里,选择文件和文件夹。现在,右键单击并选择“压缩”。你也可以对单个文件执行相同操作。

Select the files, right click and click compress

现在,你可以使用 zip、tar xz 或 7z 格式创建压缩归档文件。如果你好奇,这三个都是各种压缩算法,你可以使用它们来压缩文件。

输入一个你想要的名字,并点击“创建”。

Create archive file

这不会花很长时间,你会同一目录中看到一个归档文件。

好了,就是这些。你已经成功地在 Linux 中创建了一个 zip 文件夹。

我希望这篇文章能帮助你了解 zip 文件。请随时分享你的建议。


via: https://itsfoss.com/linux-zip-folder/

作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出