应急补丁

警惕:Hadoop集群遭遇勒索软件攻击
最近,部分黑客组织针对几款特定产品展开了勒索攻击。截止到上周,已有至少34000多台MongoDB数据库被黑客组织入侵,数据库中的数据被黑客擦除并索要赎金。随后,在2017年1月18日当天,又有数百台ElasticSearch服务器受到了勒索攻击,服务器中的数据被擦除。安全研究人员Niall Merrigan表示,截止到目前,受攻击的ElasticSearch服务器已经超过了2711台。紧随上述两次攻击事件,目前已经有黑客将目标瞄准了Hadoop集群。这些勒索攻击的攻击模式都较为相似,在整个攻击过程中并没有使用任何勒索软件,也没有涉及常规漏洞,而是利用相关产品的不安全配置,使攻击者有机可乘,轻而易举地对相关数据进行操作。
BIGDAF security plugin 是北京观数科技有限公司开发免费提供给用户使用的应急补丁,中文名为BIGDAF 反勒索应急包
法律声明
• BIGDAF反勒索应急包(以下简称“本产品”)是北京观数科技有限公司(以下简称“观数科技”)提供的一个对抗针对hadoop勒索攻击的应急工具包。本工具包由观数科技免费提供,不得以任何形式用于商业用途。
• 本产品中之版权归观数科技所有。用户可以自由选择是否使用本产品。如果用户下载、安装、使用本产品,即表明用户信任该软件作者,北京观数科技有限公司。对任何原因在使用本产品中提供的软件时可能对用户自己或他人造成的任何形式的损失和伤害不承担责任。
• 任何单位或个人认为通过本产品可能涉嫌侵犯其合法权益,应该及时向观数科技书面反馈,并提供身份证明、权属证明及详细侵权情况证明,观数科技在收到上述法律文件后,将会尽快移除被控侵权软件。
• 因本产品引起的或与本产品有关的任何争议,各方应友好协商解决;协商不成的,任何一方均可将有关争议提交至北京仲裁委员会并按照其届时有效的仲裁规则仲裁。
• 请在引用、复制、打印、出版及分发本产品以及相关信息时,应满足下列条件:仅可用于提供信息、且非商业用途或事先获得观数科技的书面授权复制或部分复制任何内容时必须标明信息来源于观数科技。
安装后通过应急补丁进入hadoop后界面效果.(输入账号密码前无法查看hadoop集群.)
1. 前言 : BIGDAF security plugin 是北京观数科技有限公司开发免费提供给用户使用的反勒索应包 ,任何企业个人不得修改或者商业盈利,否则将追究其法律责任. 2. 版本说明 : 此产品目前已测试2.5.2、2.6.5、2.7.3 hadoop可用,支持2.0以上hadoop版本。 支持JDK 版本 Building (Supports JDK-1.7.x or JDK-1.8.x) 3. 产品配置说明 : 1. 将文件压缩至于hadoop同级别目录下,进入解压包下的conf目录配置文件(对Hadoop 进行一些安全配置)
a) 在gateway.properties文件中为Hadoop 添加用户名字和密码
vi conf/gateway.properties

配置用户名密码
daf.user.name=***
daf.user.password=***

b) Hadoop NameNode地址配置
hadoop.namenode.address.hdfs=hdfs://192.168.1.28:8020(集群式使用)
或者 hadoop.namenode.address.hdfs=hdfs://192.168.1.28:8020(单节点使用)
hadoop.namenode.address.webhdfs=http://192.168.1.28:50070
保存配置文件:wq
注:BIGDAF启动端口不建议修改,此端口为进入本产品的入口点。

2. 访问方式

a) webHDFS方式:
一、到hadoop的hdfs.site.xml文件中将dfs.permissions.enabled属性改为false,如果没有请添加。

二、地址:原来hadoop 地址为修改端口情况下为50070 (需要提供如上配置用户名字密码)
外网地址:50070
样例:

http://:<PORT>/webhdfs/v1/<PATH>?delegation=<TOKEN>&op=...

具体请参照Hadoop官方API的Hadoop API WEBHDFS
地址:http://hadoop.apache.org/docs/r1.0.4/webhdfs.html

b) RPC方式:
外网地址:8020 (需要提供如上配置用户名密码)
配置到系统环境变量中添加配置, 并且使配置生效
vi ~/.bash_profile
export HADOOP_USER_NAME=test:databpsdaf.~
(若使用程序调用,需要使用System.setProperty(“HADOOP_USER_NAME”,user);)
source ~/.bash_profile

我们提供了利用base64 (URL Safe Base64)编码用户名密码的接口:
http://192.168.1.28:8084/gateway/encodeToUserName?uname=test&password=databigdaf.~
样例:System.setProperty(“dGVzdDpkYXRhYmlnZGFmLn4”,user);

具体请参照Hadoop 官方API Hadoop RPC HDFS
地址:http://hadoop.apache.org/docs/r2.7.3/hadoop-project-dist/hadoop-common/FileSystemShell.html

3. 插件日志查看与本目录同级别 log 目录
a .cat gateway-server.err
b. cat gateway-server.out

4. 选择其中一种进行配置:
A:(推荐)手动开启防火墙 高可用HA 需要在namenode主从节点执行 ,单节点在namenode 节点执行。
防火墙禁用namenode 对外8020端口和50070
一 . 安装 iptables yum install iptables-services -y
二. 启动防火墙 service iptables start
三. HDFS

四.使iptables 生效
service iptables save

B.(不推荐)利用脚本来实现本地配置,Hadoop 修改 locahost 地址允许本机器访问:
完成安装后进入BIGDAF security plugin的/bin目录下启动free_plug.py文件

运行

成功后

chmod 744 free_plug.py
python -u free_plug.py
注:此脚本暂时适用于单机版,不适用于高可用。

6. 还原说明
找到free_restore.py文件使用python -u free_restore.py命令。

chmod 744 free_ restore.py
python -u free_restore.py