[测试请求]Linux Mint 18用加固ed内核
熊猫阿Bo2016/09/02软件综合 IP:德国
本板块开版已久。原本打算写一两篇比较贴合板块主题的文章。

无奈内核加固在下两眼一抹黑,直接搬运他人的文章的话也存在顾虑。

就这样一天一天看着板块安静下去内心实在是非常不舒服。特此发布前些日子在下编译的Linux-4.6.4-pandabo-grsec内核一份,以期抛砖引玉。

恰恰在编译这一版本的内核的时候,正是国内讨论CVE-2016-5696正热之时。在翻找了主流一两天之后,终于找到了相关的两个补丁。

在此特请各位帮忙测试此版本内核,期待大家的反馈!

安装流程:
\\从零开始的话请下载安装Linux Mint 18最新发行版,在此不作说明;
7z x [我发的压缩包们]; \\解压缩压缩包们
gpg2 --verify [解压得到的.sign文件]; \\验证完整性和真实性,请验证通过后再继续
tar xvf [经过上一步验证的tar.xz文件]; \\解压缩压缩包
sudo dpkg -i *.deb; \\安装此内核
\\安装完毕后,请根据实际情况更新引导配置


压缩包们虽然早就在论坛里分享,但由于看不到下载量,因此不知道是否已经有人尝试试用,下载地址:
(写在2016年10与28日的警告:由于一个严重的本地提权漏洞被发现,虽然此内核版本经过加固,但是已不再推荐使用,请看本帖最新楼层所附的附件并改用新的版本。切切!)

attachment icon Linux-4.6.4-pandabo.zip.001 19.43MB 001 31次下载

attachment icon Linux-4.6.4-pandabo.zip.002 19.43MB 002 28次下载

attachment icon Linux-4.6.4-pandabo.zip.003 19.43MB 003 37次下载
(共3个压缩包)

在下期待您的测试结果!

注:未配置pax flag的某些奇♂怪的应用程序在本内核中无法运行为正常情况,敬请自行判断是否进行配置,比如Google Chrome浏览器、甲骨文JRE、Firefox浏览器等。

[修改于 8年3个月前 - 2016/10/28 22:58:18]

来自:计算机科学 / 软件综合
8
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
y5664579
8年4个月前 IP:黑龙江
825280
不了解详情 编的armv7  还是x86
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
熊猫阿Bo作者
8年4个月前 IP:德国
825287
引用 y5664579:
不了解详情 编的armv7  还是x86
抱歉忘了说了,桌面版的x86_64。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ekenchan
8年4个月前 IP:广东
825347
能不能说一下编译过程?在grsecurity的官网上下载不能grsec的补丁
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
熊猫阿Bo作者
8年4个月前 修改于 8年4个月前 IP:德国
825618
引用 ekenchan:
能不能说一下编译过程?在grsecurity的官网上下载不能grsec的补丁

抱歉,一开始以为没人会关心这一部分于是就没有说明。

关于不能grsec官网上不能下载稳定版补丁的问题,由于长期以来发生了令人恶心的事情,因此如今grsec团队放出的稳定版补丁都仅向赞助商开放下载,详情见:XXXXXXXXXXXXXXXXXXXXXt/XXXXXXXXXXXp (全英文)

在下所得到的补丁是上个月的时候放出的针对Linux-4.6.4版内核的测试版补丁,由于RAP等等强大的防护性能另在下亢奋异常,因此一头扎进测试版补丁里不回头了。根据朋友的描述,grsec能保5年平安,也劝告我不必紧跟Linux内核的最新进展。而许多Linux新版本提供的功能和驱动我又必须使用,因此目前暂停留在4.6.4这个版本上。

至于编译的过程,实际上没什么特殊的,和公开的方法几乎没有区别,我只是在打grsec补丁之前先把CVE-2016-5696的两个主流补丁给打上(令我感到奇怪的是,ubuntu 16.04.1的新内核针对CVE-2016-5696的补丁只打了一个,无法理解)然后再打grsec的补丁。接着使用menuconfig根据自己的需要配置内核配置文件。最后编译打包。具体流程如下:

1.全新安装Linux Mint 18 Mate发行版(由于日常需要,在下直接做EFI引导并且LVM over luks磁盘加密);
2.编译前准备工作:
//首先是系统更新:
sudo apt-get update && sudo apt-get upgrade
//接着是安装编译所需的必要的东西:
sudo apt-get install build-essential libncurses5-dev gcc-4.8-plugin-dev libssl-dev

3.下载所需的东西(包括内核本身及其签名、对应的grsec补丁文件及其签名、在内核主流寻找一些必要的补丁,比如在下为了找CVE-2016-5696的补丁深挖了好些天!)
4.编译:
//验证内核源代码的签名:
gpg2 --verify linux-4.6.4.tar.sign linux-4.6.4.tar
//验证通过后解压内核源代码tar包
tar xvf linux-4.6.4.tar
//进入内核源代码包文件夹:
cd linux-4.6.4
//打CVE-2016-5696补丁:
patch -p1 < ../CVE-2016-5696-patch
//打grsec补丁:
patch -p1 < ../grsec-4.6.4.patch
//配置内核并生成配置文件:
make menuconfig
//将内核配置文件保存为.config之后,开始编译,多线程编译,并且输出为deb包。为了避免眼花,关键的警告内容用日志工具记录下来:
make -j4 deb-pkg > log 2>../compile-log.txt

5.后续工作:
编译内核是一个漫长的过程。中间需要打发时间而且安全起见在做编译的准备的时候开始就一直断网了,因此能做的恐怕只有拿出手机连上WiFi看视频教程、电影、电视剧、动画或者逛逛科创论坛、新闻网站等等等等。

5.1. 安装编译好的内核:
苦等很久很久很久,待编译器工作结束之后,打开日志看看有没有严重警告或者错误提示,没有的话将../路径下的deb文件打包并且签名存一边之后在自己的机器上安装内核开始体验:
sudo dpkg -i *.deb


5.2. 安装pax相关的工具:
请自行前往XXXXXXXXXXXXXXXXXXXXXX/~blueness/elfix/ 下载安装最新版本的elfix并编译安装。

由于特殊原因,在我自己的机器上需要自行配制grub2引导,在此略过不讲

5.3.尝试重启机器引导到新安装的内核并开始进行适配试用工作:
使用paxctl-ng配置一些奇怪的软件,如Google Chrome浏览器、Firefox浏览器、JRE等,的PaX flags,而后再安装这些软件。当然也可以先安装后配置PaX flags。一般Google Chrome浏览器等只需要用paxctl-ng设置m flag就好。接着尝试在命令行界面运行这些软件,假如可以成功运行的话证明您和我一样没有遇到奇怪的问题。

5.4.最后安装沙箱工具,好把软件装在套子里:
sudo apt-get install firejail

5.4.1.尝试在firejail里运行Firefox和Google chrome等软件:
firejail firefox
//firefox正常后退出再试试下一个软件:
firejail chrome


上面的内容说得有点多了,firejail是一个最近频繁上新闻的沙箱,别人的评价是做得不错。在grsec加固的内核里再把每一个应用软件套上firejail的话,一般的奇怪的东西都没那么容易打得进来了。

需要注意的是,不要随便给不明来历、奇怪的软件设置Pax flag,具体情况需要具体分析。假如您遇到了不能在grsec加固的内核里运行的软件,可以使用dmesg并过滤关键字grsec查看发生了什么。

谢谢您的观看,本帖子所发出的内核可放心安装使用,在下期待您的反馈。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
熊猫阿Bo作者
8年3个月前 修改于 8年1个月前 IP:德国
827249

由于最近爆出的本地提权漏洞十分可怕,虽然经过加固的内核可以防住某些利用手法,但是已经有人发现某些手法还是顶不住的,因此强烈建议大家抛弃顶楼的Linux-4.6.4版本内核,改用本楼版本。(4.7.10加固版,需验证签名后再将三个部分同时解压)

由于在下连续8个小时尝试上传论坛附件无果,因此暂时放出网盘链接。待不知何时何日上传成功再来编辑此楼。

既然无法正常上传论坛附件,我已经尽力了,还请版主们高抬贵手。

网盘链接:(写在2016年11月22日的备注:本楼的版本已经旧了,敬请下载本帖子最新的楼主所发回帖的版本,初步发现在稳定性上有所改进) XXXXXXXXXXXXXXX/#!j9khjLYD!rS3xN0NVLz0OT4UeP5uywDLWU5cJcC7fZGbA2eSL-4I XXXXXXXXXXXXXXX/#!e5M1gIqZ!89H9DLssXgU4aCP3OVG_F74eZcL8yC44dabsln1zVIs XXXXXXXXXXXXXXX/#!y1FDibyI!x0Fxh7BD4iUJLZbi-kv3rNNwGW30b9SP4XpcwDA9SfE

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
bi7lnq
8年3个月前 IP:广东
827275
可以理解lz的分享精神,但是在乎这些补丁的人,我想应该没有这么宽心会在论坛下载个内核开跑吧。搞安全的人都是有受迫害妄想的。

不如提供出不定和编译参数。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
熊猫阿Bo作者
8年3个月前 修改于 8年3个月前 IP:德国
827276
引用 bi7lnq:
可以理解lz的分享精神,但是在乎这些补丁的人,我想应该没有这么宽心会在论坛下载个内核开跑吧。搞安全的人都是有受迫害妄想的。

不如提供出不定和编译参数。
虽然没明白您说的出不定是啥。但是复现所需的所有内容本帖都有提供,顶楼的4.6.4版的虽然是旧的,但是配置也是可以直接用在4.7.10上的,而且由于内核已经打上了CVE-2016-5696的完整的补丁,而且已经修复了DirtyCOW。

已经放出的网盘链接里的配置我根据自己的需要,开启了:
USB-C接口支持、z3fold算法;grsec配置设定为performance、桌面环境、虚拟化为KVM的HOST模式、Soft mode关闭、RBAC关闭。

另外,事情不能“被害妄想”一言蔽之,目前主流Linux版本已经修复了DirtyCOW,使用Linux Mint 18的朋友直接安装我发出的最新内核便可轻松防护。而且尽管主流Linux已经修复,但是Android还是顶不住的。一阵血雨腥风已经可以预见。这是个现实的问题,除非手机客户端不用网银APP等重要的东西。

本帖的主要目的是请求对我发出来的内核进行测试,为大家带来便捷只是副作用。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
熊猫阿Bo作者
8年2个月前 修改于 8年1个月前 IP:德国
827871
历时20天!论坛附件终于上传成功!此为Linux Mint 18发行版用加固内核,版本4.7.10。可抗住DirtyCoW漏洞的已知利用手段。欢迎测试!

论坛附件共3份,放在同一路径下解压缩后可得到附带签名的压缩包文件。只有验证签名通过后方可获得压缩包。敬请注意。

备注:本内核DEB包与顶楼版本一样保留配置文件,并无隐瞒。

(写于2016年12月8日的备注:由于CVE-2016-8655被发现,此版本已旧,请改用2016年12月8日的版本)
2016年11月2日版本:(旧版,建议改用本帖下面的新版)论坛附件ID:271714、271715、271716

2016年12月8日版本:

attachment icon 熊猫用Linux-4.7.10-加固-20161208.7z.001 19.84MB 001 30次下载

attachment icon 熊猫用Linux-4.7.10-加固-20161208.7z.002 19.84MB 002 51次下载

attachment icon 熊猫用Linux-4.7.10-加固-20161208.7z.003 19.84MB 003 36次下载
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
所属分类
上级专业
同级专业
熊猫阿Bo
进士 学者 笔友
文章
21
回复
287
学术分
1
2014/05/16注册,4年1个月前活动

A0D3 19DD 49E3 0220 B4EE 1BD3 7037 4C2D 2A07 EDE1

主体类型:个人
所属领域:无
认证方式:邮箱
IP归属地:未同步
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}