美文网首页19-23年 学习笔记
【第九届中国软件杯大赛】

【第九届中国软件杯大赛】

作者: Du1in9 | 来源:发表于2020-05-02 15:10 被阅读0次

赛题名称: Linux下基于签名技术的软件保护

一.分析题目

0x01 功能要求

①参赛作品应在统一操作系统UOS20或社区版deepin上编译生成,并可稳定运行

②对于任意二进制程序、应可以使用签名工具对程序进行签名,在操作系统中预制公钥、证书与验证程序以验证ELF可执行程序的完整性,若验证失败,则ELF可执行程序无法运行

③签名后的ELF可执行程序可正常运行在带有签名验证的Linux操作系统上,以及不带有签名验证机制的Linux操作系统上

④加密算法限定仅能使用国密算法或者RSA算法

0x02 实现条件

①开发环境为Linux开发环境

下载地址:http://cdimage.deepin.com/releases/15.11/deepin-15.11-amd64.iso

②开发语言限定为C语言

0x03 文档及其他要求

①完成设计文档,原理无问题,源代码和编译步骤;部署方法与测试方法;测试演示视频。

②完成基于公私玥的签名程序,能对任意ELF程序进行签名,并能通过readelf等程序读取添加的节,且不影响程序的正常运行。

③完成基于公私玥的验证程序,能透明地对任意ELF程序在运行前进行签名验证,签名验证通过的可以正常运行,未通过的不允许运行,对比未实施签名验证前的程序启动时间延迟不超过10%。

④不修改内核源码,开发外置内核模块挂钩Linux内核的进程启动流程作为验证程序。

二.文献调研

①先谷歌一下不懂的地方

deepin:deepin操作系统是由武汉深之度科技有限公司开发的Linux发行版。deepin操作系统是一个基于Debian的Linux操作系统,专注于使用者对日常办公、学习、生活和娱乐的操作体验的极致,适合笔记本、桌面计算机和一体机

二进制程序:https://blog.csdn.net/vqtyh/article/details/78165852

现有linux签名工具:https://blog.csdn.net/qtb999/article/details/94635925

https://download.csdn.net/download/lliuliu18810979455/9264661

linux中私钥和公钥:https://www.cnblogs.com/struggle-1216/p/11746780.html

linux验证程序参考代码:http://blog.chinaunix.net/uid-24611346-id-3338117.html

ELF可执行文件分析:https://blog.csdn.net/ailunlee/article/details/98636559

elf签名和可执行文件签名:https://blog.51cto.com/dog250/1274092

代码签名验证机制:https://wenku.baidu.com/view/63ddf73031126edb6f1a10d2.html

签名验证的加密算法:https://www.cnblogs.com/Caersi/p/6720789.html

linux内核源码、内核编译与配置、内核模块开发、内核启动流程:https://blog.csdn.net/weixin_34217711/article/details/85494731

②准备工作

文献调研:

工具:WPS

文档设计参考:https://blog.csdn.net/buchidanhuang/article/details/83543364

https://www.jianshu.com/p/91ea587a34dc

格式要求:

视频录制工具:http://dl-next.aunbox.cn/channel?channel=8f3b3b68

linux内核源码下载地址:https://blog.csdn.net/u011375704/article/details/81866427

相关文章

网友评论

    本文标题:【第九届中国软件杯大赛】

    本文链接:https://www.haomeiwen.com/subject/gspkghtx.html