android审计
㈠ 加密/解密Android现有的数据库使用sqlCipher问题,怎么解决
针对sqlite数据库文件,进行加密。现有两种方案如下:
1.对数据库中的数据进行加密。
2.对数据库文件进行加密
1.uin怎么获取?
这个uin不是登录的帐号,而是属于内部的、程序界面上不可见的一个编号。
至于查看,最简单的方法就是登录web微信后,按F12打开网页调试工具,然后ctrl+F搜索“uin”,可以找到一串长长的URL,里面的uin就是当前登录的微信的uin。
还
有一种方法就是配置文件里,导出的微信目录下有几个cfg文件,这几个文件里有保存,不过是java的hashmap,怎么解析留给小伙伴们自己琢磨吧,
还有就是有朋友反应退出微信(后台运行不叫退出)或者注销微信后会清空这些配置信息,所以小伙伴们导出的时候记得在微信登陆状态下导出。博主自己鼓捣了一
个小程序来完成解析。
2.一个手机多个登录帐号怎么办(没有uin怎么办)
根
据博主那个解密的帖子,必须知道串号和uin。串号好说,配置中一般都有可以搞到,uin从配置中读取出来的时候只有当前登录的或者最后登录的,其他的几
个记录都没办法解密。网上某软件的解决方法是让用户一个一个登录后再导出。这个解决方法在某些情况下是不可能的,或者有时候根本不知道uin。
后来经过一个朋友的指点,博主终于发现了解决方法,可以从配置中秒读出来这个uin,这个方法暂时不透漏了,只是说明下这个异常情况。
3.串号和uin怎么都正确的怎么还是没办法解密
先
说说串号这个玩意,几个热心的朋友反馈了这个问题,经过博主测试发现不同的手机使用的不一定是IMEI,也可能是IMSI等等,而且串号也不一定是标准的
15位,可能是各种奇葩,比如输入*#06#出来的是一个,但是在微信程序里用的却是另一个非常奇葩的东西,这种情况多在双卡双待和山寨机中出现,经过严
格的测试,现在已经能做到精确识别,那几位热心的朋友也赠与了不同的代码表示鼓励。
4.计算出来了正确的key为什么无法打开数据库文件
微
信这个变态用的不是标准的sqlite数据库,那个帖子也提到了不是数据库加密,是文件的内容加密,其实是sqlcipher。官方上竟然还卖到
149$,不过倒是开放了源码,水平够高的可以自己尝试编译。google还能搜索到sqlcipher for
windows这个很好编译,不过博主不知是长相问题还是人品问题,编译出来的无法打开微信的数据库,后来改了这份代码才完成。
5.数据库文件内容是加密的,怎么还原
这
个是某些特殊情况下用到的,比如聊天记录删除了数据库中就没了,但是某个网友测试说数据库无法查询出来了,但是在文件中还是有残留的。这个情况我没测试
过,不过想想感觉有这个可能,就跟硬盘上删除了文件其实就是删除了文件的硬盘索引,内容还是残留在硬盘上可以还原一样,sqlite数据库删除的条目只是
抹去了索引,内容还存在这个文件中。
网上的都是直接打开读取,并没有解密还原这个文件成普通的sqlite数据库,使用sqlcipher
的导出方法也只是将可查询的内容导出。后来博主花了时间通读了内容加密的方式,做了一个小程序将加密的文件内容直接解密,不操作修改任何数据,非数据库转
换,直接数据流解密,完全还原出来了原始的未加密的数据库文件,大小不变,无内容损失,可以直接用sqlite admin等工具直接打开。
6.已经删除的聊天内容可以恢复么
通过上述第5的方式还原出原数据后,经测试可以恢复。sqlite的删除并不会从文件中彻底删掉,而是抹掉索引,所以可以通过扫描原始文件恢复。前提是没有重装过微信。。。
两种加密方式的优缺点,比较如下:
一、对数据库中的数据进行加密
优点:
1.实现数据加密快速,只需添加两个方法
一是:对明文数据进行加密返回密文数据
二是:对密文数据进行解密返回明文数据
2.程序无需进行太大变动,仅在对数据进行添加,修改,删除,查询时。针对指定的表字段进行修改进行加密,解密的字段即可。
不足:
1.由于对数据进行了加密。所以为了看到明文,必须密文进行解密。因此会增加处理器的消耗。因终端手机的处理能力有限,可能会出现处理数据缓慢的现象发生。
2.仅仅对数据进行了加密,还是可以看到数据表的sql语句,可能猜测到表的作用。另外,如果没有对一个表中的所有字段加密,则可以看没有加密的明文数据。
需要做的工作:
1.无需考虑平台差异性,qt,android,ios都能快速的实现。只需在每个平台上,使用各自的语言,实现同样的加密,解密算法即可。
2.需要对加密算法进行了解,选择一种加密算法,进行实现。
二、对数据库文件进行加密
优点:
1.对整个文件进行了加密,用户通过编辑器看不到任何有用的数据,用户使用sqlite browser软件也无法打开文件查看数据,保证了数据安全。
2.进行打开数据库时,使用程序sqlite3_key(db,”********”,8);即可对文件解密,对数据表的操作无需进行加密,采用明文即可。
不足:
1.需要修改sqlite的源代码,这个工作难度比较大。
2.需要对修改后的sqlite进行编译,需要对makefile有所了解,手动编写makefile文件,对源程序进行编译。因平台差异性,可能会造成某个平台无法编译生成动态链接库的可能。
3.需要对数据访问层代码进行修改,例如qt平台需要将以前对数据库操作使用的QSqlQuery类,更改为使用sqlite3.h文件中定义操作,对数据库操作。其他平台也一样,都要做这一步的修改。
4.在程序编译时,要加入使用加密的动态链接库(linux为共享库.so文件)windows平台最容易,只需将所使用的dll文件到应用程序中即可。其他平台需要实验,看如何引入库,如果编译。
需要做的工作:
1.修改sqlite源代码,追加对数据库文件进行加密的功能。
2.编译含有加密功能的程序源代码,生成各自平台需要使用的库文件。
3.将加密sqlite库文件引入各自平台中,修改数据库访问层代码。
4.进行程序的部署,测试。
三、数据库加密原理
目前主流的数据库都采用了各种安全措施,主要包括用户认证、访问控制、数据加密存储和数据库操作审计等措施。
用户认证:用户或者程序向数据库提供自己的有效身份证明,数据库鉴别用户的身份是否合法,只有合法的用户才能存取数据
库中的数据。用户认证是所有安全机制的前提,只有通过认证才能进行授权访问和审计。
访问控制:数据库管理系统为不同的用户分配不同的权限,保证用户只能进行授权的访问。目前,一些大型数据库(如Oracle 等)
都采用了基于角色的访问控制机制,即为用户授予不同的角色,如db—owner,security administrator 等,不同的角色允许对数据库执行不同的操作。
数据库加密:用户认证以及访问控制对访问数据库进行了控制,但攻击者可能会利用操作系统或数据库漏洞,或物理接触计算机,而直接接触数据库系统文件,从而可能绕过身份认证和存取控制而直接窃取或篡改数据库内容。对数据库中的数据进行加密是防范这类威胁的有效手段。
数据库操作审计:监视和记录用户对数据库所做的各种操作的安全机制,它记录并存储用户的操作,用于事后分析,以检查导致数据库现状的原因以及提供追踪攻击者的线索。数据库的备份与恢复:当数据库发生不可恢复的故障时,可以将数据库恢复到先前的某个一致性的状态。
四、SQLite 加密
由于SQLite 是开放源码的,并且在其源码中预留了加密接口,我们可以通过实现其预留的加密接口实现口令认证和数据库加密以完善其加密机制。
1.口令认证
SQLite 数据库文件是一个普通文本文件,对它的访问首先依赖于文件的访问控制。在此基础上,再增加进一步的口令认证,即在访问数据库时必须提供正确的口令,如果通过认证就可以对数据库执行创建、查询、修改、插入、删除和修改等操作;否则,不允许进一步的访问。
㈡ Android 上的漏洞对普通用户有何影响,如何防范
首先,他们给这个漏洞取名叫寄生兽实在是……简单来说这其实是一个静态代码注入的漏洞,关键点在于安卓系统源码中对odex缓存文件的校验薄弱,可被绕过,从而实现恶意代码注入。那么这个漏洞的首要触发条件就是攻击者要能覆盖目标app的在文件系统中的odex,而每个app的odex都是在其私有目录里面,受沙盒机制保护。攻击者要利用这个漏洞就先得突破沙盒机制,而如果攻击者都已经有这样的权限了,其实能做的事情非常多,这个漏洞只是其中一种。
360列出了4种可能的攻击场景来突破沙盒机制。首先是三星自带的输入法的远程命令执行漏洞,这个漏洞要利用得劫持网络做中间人攻击,其实是比较局限的,不谈需要在应用插件更新时劫持网络,首先你得有一台三星……然后360列出了真实环境中的3种场景。第一种是解压目录遍历,这个其实是app开发者没有安全调用安卓原生api导致的漏洞,可让攻击者在解压时以目标app的权限覆盖到odex。第二种是备份的漏洞,这种漏洞也是由于安卓开发者没有安全配置清单文件导致的,可利用修改备份然后恢复的方式覆盖odex。以上两种方法都不需要root权限,这明明就是开发者的锅!就这两种场景而言,这个漏洞是有一定影响面的,跟webview那个由来已久的远程代码执行漏洞一样,是安卓本身安全缺陷导致的,但开发者自己应该作出应对。以后大家做安全审计时可以注意一下上面两种场景现在有新的注入手段了。第三种攻击场景是危言耸听,基本可以无视,要求攻击者具有root权限,你都有root权限了为什么不考虑动态注入呢,目前很多app的动态注入防护是很弱的,实际上大多数根本没有。
最后表达一下我一直以来的观点,不要动不动就把锅推到用户身上,root手机带来的安全隐患真的没有想象的那么大。为用户减少安全风险是每个敬业的安全工程师的职责,如果你所谓的安全是放弃功能,那大家还不如换回小灵通,这完全就是没有责任感的表现。
㈢ 安卓7.1有哪些新功能 安卓7.1系统新功能介绍
1、分屏多任务
其实这个功能,之前不少厂商已经做了,而谷歌终于让7.0原生支持了它,从实际体验来看,户点击多任慧弯清务按键后,长按其中一个应用,将其拖拽到屏幕顶部或底部,然后再点击另外一个应用就可以实现分屏多任务功能。
2、“Data Saver”
这个功能简单来说就是减少App在后台流量偷跑,用户可以设置黑名单,当Data Saver开启后,这些黑名单中的App将会受到流量限制措施,同时谷歌也减少一些图像传输的分辨率,限制移动流媒体服务的码率,限制一些软件的预缓存功能(自动读取用户并未请求的数据)。
3、号码拦截
谷歌还在新系统中加入了号码拦截功能,用户可以更好拦截诈骗分子、营销电话以及其他骚扰电话,而被封杀的电话号码,将无法来电或者发送短信。
4、更便捷的通知中心
谷歌让7.0系统的通知中心变的便捷且更强大,为了让用户节省更多的时间,首先下拉通知栏中最上方加入了快捷按键控制开关,同时通知中心能显示更多的信息,其次用户可以在通知中心内快速回复消息(免去再打开相应应用的繁琐步骤了),最后就是消息的归拢(就是同一个应用的通知变成“通知组”),如当你收到4封邮件,通知中会一一为你展现,你可以挨个或者分批处理(也可以类比QQ消息),很是方便。
5、夜间模式
准确来说,这并不是一个新闹高功能,6.0预览版中有,但正式版谷歌给剔除了,现在它又回来了。跟之前不太一样的是,这次的夜间模式被放在了系统UI设置中,打开后系统会根据环境自动开启。
6、增强的Java 8语言支持
7、画中画模式
这个画中画的展现方式跟iOS 9上的基本一致,不过安卓的这个主要是针对电视平台的,当然如果用户不喜欢屏前前幕平分显示的话,可以将其中一个窗口调整到设定的最小值。
㈣ 主动加密的防泄密软件有哪些
主动加密的防泄密软件有哪些?
这个问题有点误区,企业级防泄密软件,按加密技术分应用层加密和驱动层加密,首选驱动层加密;二按加密算法分为对称加密算法和不对称加密算法,目前加密强度最高的是AES加密算法。三“主动加密的防泄密软件”业内称为“驱动层自动加密技术的防泄密软件,就是指安装了防泄密软件的计算机打开或修改或新建一个文件,保存后可以文件会自动加密,在本机可以正常打开而不需要口令或密码。四、企业级防泄密软件,不仅有主动加密功能,还有手动加密、批量加解密、硬盘加解密、邮件解密,远程解密,审批解密,自动解密,只加密不解密、只解密不加密、自定义文档加密等功能,可以适合公司各种业务流程选择使用。
合力天下数据防泄密系统(HL-dataAS)用于保护企业的知识产权、客户资料、财务数据、技术图纸、应用系统等机密信息化数据不外泄。简单地说,”合力天下”防泄密系统让企业机密数据和应用系统的重要资料“拷不走”、“屏幕截取不走”、“另存不走”、“打印不走” 、“内容复制不走”、“MSN、QQ、邮件发送不走”。
一、支持各种文件格式加密(CAD、OFFICE、PDF、图纸、计算机程序、课件、游戏动画、数码照片、视频…..),用户也可以根据自己的需要定制;支持出差人员管理;支持文档外发管理;防止涉密文档非法扩散。支持控制台审批解密,支持手机审批解密。 灵活的权限控制:只读、可写、可编辑、禁止删除;打印水印、禁止拍照等。
二、 支持局域网部署和互联网部署模式,支持总部和异地分支机构分别部署;支持单机部署模式;确保公司内部资料的相互流通。
三、支持各种应用系统:支持基于Windows的B/S、C/S的各种业务应用软件加密,如PDM、PLM、ERP、OA、CRM、CAM、HR、采编软件、流程管理软件、电子商务软件、财务软件、文档管理系统、网站服务器、云服务器、企业网盘、手机终端等。
四、 支持任意格式文档类型:Office、Open office、Wps、PDF、outlook、FOXMAIL、ARM、ANSYS、Easypro、OA系统、ERP、MSVISIO、 AutoCAD、Autodesk Inveator、Autovue、ACDSee、Pro/E、Inventor、CAXA、CAJviewer、Protel、PReS、Keil、Quartus、AVR Studio、 ARM Studio、Siemens Wicc、Xtcapp55、TurboCAD、开目CAD、TwinCAD、CATIA、Solid Edge、UG、PowerDraft、Photoline、清华天河CAD 、中望CAD、英泰CAD、浩辰CAD、凯思CAD、JEwelCAD、Code Wright、ULTRAEdit、Solidworks、SVN、ZDDS、IAR、PowerDesigner、FPWIN GR、FX-PCS-DU-WIN-C、FXGPWIN、PhptoShop、DreamWeaver、MTcardEdit、CorelDraw、Fireworks、Flash、ACDSee、ZineMarker、 HITACHI Embedded workshop、HIGH-Performance Embedded workshop、Embedded workshop、CAM350、Matlab、 Labview、Illustrator、 MAYA、3D MAX、unity、realplay、media player、Cakewalk、Flash、LRC Editor、Lightscape、Beyond Compare、Java、Delphi、VS.Net、C、 VB、VC、C++、Java虚拟机、Source Insight、WINRAR、EDITplus、IBM ClearCase、PowerBuilder、PowerPCB、Powerlogic、Power mill 、数控传输软件、视频文件、编程ICC、打标机(票据打印)、CAMtastic、DELcam-Exchange、cimatron、Macrumedia、Microchip、 MasterCAM、FastCAM、MyEclipse、Eclipse、Tomcat、MultiGen Creator、FoxPro、Access、MSSQL、Oracle、WinMerge、XOREAX、InCrediBuid、 ZBrush3、JDPaint、BodyPaint 3D、英泰PDM、NTKO、KASS、WINRAR、WINRAR、SILK ROAD、ETMARK、海康威视监控视频、邮箱大师、安卓手机、苹果手机等各种文档格式,即可自定义加密任意文件格式。
五、支持以下操作系统(32位 64位):
Windows XP、2003、2008、2012、win7、win8、win10; LINUX系统; 苹果MAC OS系统; 安卓(Android)系统 ,苹果 IOS 系统.
六、 支持中文、英文、俄、日文、德文、韩文、法文、西班牙文等各种语言网络环境,支持中文、英文、俄、日文、德文、韩文、法文、西班牙文等各种语言文档加密。
七、合力天下数据防泄密系统按功能分为以下版本:租用版,普及版 ,企业版 ,专业版,行业版,旗舰版。可以满足国内各类企事业、设计院所、政府机关单位部署。