Ubuntu Tweak is a magical tool for users to configure Ubuntu easier, it has a growing amount of users. I propose to make some enhancement to provide better PPA and key security.
We need to have a GPG key pair to sign and verify texts to make sure the key hash list is credible. And I prefer SHA128/256 to be our hash for key file fingerprints because some users are considering MD5/SHA1 is not so reliable today. We are just verify some key files, so such performance degradation is bearable.
Now I will describe what will it do actually when a user install/upgrade a Ubuntu Tweak.
We need to prompt to import a GPG public key to users keyring for the first time a user start Ubuntu Tweak and go to the PPA tunning section, or when he deleted or changed the key in his keyring. Every time the application should check current user’s keyring to find the a key’s fingerprint, and the key ID is our preshipped version in our program(do not worry about someone has changed this value, we have the procedure to verify it).
Then prompt the user we need to update our application data online, including PPA and their key definitions. And UTCOM need to provide a LATEST version file as well as the current version of data. We UT checks for update, it compare the LATEST version and determine whether it need to update the data. Such action can be done once a week or twice (of course the first run we need do it as well).
The data pack should contain the following content:
1.Public key fingerprint which we have mentioned before, this is used to verify the key once the data pack has been extracted.
2.source.list.d entries
3.PPA keys
4.PPA key fingerprint (hash, sha256 perhaps)

When download finishes, the application first verify the data package with its signature (can be achieve with another text file contains the tar file’s hash, and sign that text with GPG method). If everything goes correct, extract the package and find out the GPG key fingerprint and compare it with the system installed one (what we used to verify the tar pack just now), when the verify works, we can believe the data is reliable, and check hash of other key files.

Every time Ubuntu Tweak add a PPA, it should check the PPA list it downloaded and verified, so we can believe the program won’t add PPA that we haven’t check.

授权信息:
Creative Commons License Deed. 署名-非商业性使用-禁止演绎2.5 中国大陆

作者:远景论坛 系统与网络安全讨论区版主 aronmalache

(Aron Xu <aronmalache (AT) 163 (DOT) com>)

http://blogs.gnome.org/happyaron/2009/06/07/security-memorandum/
转载请注明作者及出处。

版本历史:
2008年12月14日 第一版
2008年12月15日 第一版+词语修正
2009年01月09日 第一版+小改,或者可以叫1.1版
2009年06月07日 第一版+小改

在这里提醒您注意保护您的计算机,保证正常使用和数据安全。

以下是一些注意事项,大多是最实用,最基本,也是“性价比”最高的(针对Windows用户),如果你有一定的计算机使用经验,这篇应当就算是一个备忘路,而如果你常被安全问题困扰,不论你是高手还是菜鸟与否,我想都会有些帮助或者启发吧:

1.定期给系统打补丁,或者说是进行系统更新。最简单的解决方法是打开系统带的自动更新;但是很多用户因为各种原因不愿意或者不能打开自动更新,这就需要进行手动更新。手动更新可以由360安全卫士,瑞星卡卡安全助手以及部分杀毒软件完成。在平时可以每1-2周进行一次更新,在安全威胁比较高的时期要保证1周能检查安装一次。对于服务器用户最好是能在安装到实际应用的服务器前进行一下测试,以了解安装更新后会带来哪些改变,很多更新是不能完全卸载的。

2.定期更新安全防护软件。基本上所有的安全防护软件都提供了自动更新,推荐将其打开。切记不要同时安装超过一套安全防护软件,即便是看起来没有什么冲突或者错误。因 为系统的底层资源是固定的,多个软件争夺势必造成功能损失。这里推荐几套软件,要说的一点是选择安全产品是要针对用户习惯,需求等来确定的,不要人云亦 云:ESET NOD32,卡巴斯基,Norton,Mcafee,瑞星,江民。对于ARP攻击频繁的地方强烈推荐使用ESET NOD32和瑞星,防御效果相对更好。这里要注意的是ARP攻击分客户端和网关端两种,我们能防御的都是客户端的这种,如果服务器端受到了有效的攻击我们也无能为力,这也是有的朋友遇到了装了ARP攻击防御软件仍然出现问题的原因。最根本的解决办法是ARP双向静态绑定(客户端和网关都绑定)。另外,ADSL用户如果只有一台电脑上网则不存在风险,可以放心关闭ARP防御功能。

3.不要把所有安全责任都丢给安全防护软件。安全防护软件仅仅是保证计算机安全的工具。在中国,U盘,游戏,QQ,网页挂马,局域网已经成为传播病毒的基本途径。很多人的U盘上都有不只一中病毒,而游戏,QQ,网页病毒多数是因为经济利益问题。一般情况下安全软件的主动防御和文件监控能起到比较好的效果,尤其是在有移动设备如U盘,移动硬盘,SD卡等接入前,最好打开这些监控,并查看是否屏蔽了U盘自动运行。不要浏览非法包含非法信息的网站,因为这样的网站多数都带有病毒或者恶意插件安装。即使开启了自动更新,主动防御和文件监控,也要定期进行全盘扫描,一般需要在1-2周进行一次,扫描前需要手工更新杀毒软件的病毒库和引擎到最新版本。不要随便打开别人给的文件,即使对方是可以信任的朋友,因为无法确定他知不知道已经感染了。而且杀毒软件不能有效地控制未知病毒,而很多时候都是有不少用户被感染了,才有安全公司在病毒库上添加了记录。同时不可轻易相信任何杀毒软件的可疑程度检测,那个基本上都是没有多少可信度的。这项技术一直都是实验室水平的,对于实际应用基本没有什么价值,之所以会发布是因为各个公司之间的商业竞争,有的公司拿这个来吸引不知情的用户,导致了恶性的循环。当然,病毒家族检测现在已经比较成熟了,如果杀毒软件提示是哪个病毒的变种,这个就需要小心了。

4.注意文件备份,特别是重要文件更是如此。备份可以使数据丢失时损失尽可能少。有很多 人因为中了病毒辛辛苦苦积累了很多年的文件都因为被病毒感染无法清除而不得不与之挥手告别,实际上可以通过备份来解决这些问题。但是最好不要在当前硬盘或 者U盘中备份,因为我们要保护的就是它们上面的数据。可以采用光盘备份,现在DVD刻录机和光盘的价格也越来越低,这不失为一中好的选择。切记不要以为系统做了Ghost镜像就没有问题了,众所周知,熊猫烧香会删除它能发现的所有Ghost镜像。实际上这个技术是很基础的,主要是看病毒作者是否想要添加这样的功能。

5.注意文件保密,对于有需要的文件进行加密。有些人会在计算机上安装“闪盘窥探者”,会试图把连接到机器上的移动储存设备的文件全部复制到一个指定的地方,这样会使U盘里的重要文件暴露出去。加密方式上有很多U盘和移动硬盘支持加密功能,可以直接使用。但是大部分的还是没有这个功能的,这种情况下,对于Office文档不要直接使用软件自带的加密方式,因为很容易破解。实际上rar,zip等压缩程序的加密也很难应对暴力破解,而这些格式通常都已经有了很完整的暴力破解工具。这里只能提醒大家使用的密码尽量长一点,比如12-16位的一般就很难破解了,同时不要使用英文单词,生日,姓名,游戏帐号等信息作为密码,也不要单纯地使用数字或字母。一个很好的办法是想一句话,然后把这句话的每个单词(如果是英文)或者是每个字的拼音(汉字的话)的第一个字母组成一串,然后在里面添加上标点符号和数字(根据喜好,可以不改变标点符号的位置)。这种方法创建出来的密码既容易记又有很高的保密性,同样适用于其他场合。如果有更高的安全要求,还可以使用GnuPG这样的密钥策略,2048位的密钥容量很是够用,而且配套工具也比较齐全,可以方便使用。

6.谨慎对待各种小程序,小工具,比如注册机,Hash程序等等。因为名气不大所以不会受到很多人的检验,有的时候下载的文件其实和原版的文件不一样,或者原版的文件就包含了恶意代码。部分内存注册机会被一些杀毒软件报毒,是因为在程序运行时正常情况下一个程序不应该直接修改其他应用程序的内存,而内存注册机却正是通过这种办法实现破解的。

7.不要随便点“确定”“是”“允许”“下一步”一类的按钮。通常情况下很多用户习惯了看见对话框或者提示就点这些内容,但是这种习惯也为病毒感染提供了条件,很多时候杀毒软件或者系统的UAC(针对Vista)会阻止不应该运行的程序运行,但是如果点了这些,很多时候是允许他们运行,这是一个习惯问题,不要因为每天点“允许”花了眼,手一滑就让不该运行的东西运行了。这样也能阻止很多恶意插件的安装。很多人安装应用程序的时候总是一路点击下一步,这样也会导致很多的不需要的插件被安装。而每一次这样的软件安装,都是会给软件作者一定的收入的,而且收入相当高,一般每安装成功一例就是1元钱左右。

8.不懂的情况下不要玩病毒或者研究黑客技术。因为很多时候那些工具也都被封装者添加了病毒,而你又不能让杀毒软件来捣鬼,这个时候就很无奈了。没有解决不了的问题,还是不要因为一点小事而要把别人黑了或者怎么样了。