L1E6N0A2

监督自己不断学习

0%

PFIREWALL: Semantics-Aware Customizable DataFlow Control for Smart Home Privacy Protection

摘要

物联网(IoT)平台使用户能够部署家庭自动化应用程序。同时,随着大量敏感设备数据流向IoT平台,隐私问题也随之而来。实际上,流到平台的大多数数据不会触发自动化操作,而一旦将设备绑定到平台,房主目前就无法控制。我们展示了PFIREWALL,这是一个可定制的数据流控制系统,可增强IoT平台用户的隐私。PFIREWALL自动生成数据最小化策略,该策略仅公开最少数量的数据即可实现自动化。此外,PFIRE-WALL为房主提供了接口,可通过定义用户指定的策略来自定义个人隐私首选项。为了执行这些策略,PFIREWALL透明地干预和调解IoT设备与平台之间的通信,而无需修改平台,IoT设备或集线器。在四个实际测试平台上的评估结果表明,PFIREWALL在不影响家庭自动化的情况下将发送到平台的IoT数据减少了97%,并有效地减轻了用户活动推理/跟踪攻击和其他隐私风险。

(这篇文章和我们想做的很类似鸭/(ㄒoㄒ)/~~)

阅读全文 »

模糊测试

基本概念

模糊测试是一种软件测试技术,其核心思想是自动或半自动的生成随机数据输入到一个程序中,并监视程序异常,如崩溃,断言(assertion)失败,以发现可能的程序错误,比如内存泄漏。

假如该程序在应对任一输入值时失效,开始出现冲突、锁住、消耗大量内存或者产生不可控制的程序错误,开发者就知道代码中某处出现了bug。

比较有效的模糊测试,并不是用大量纯随机数据直接来测试,而是对已知有效数据故意错误数据随机数据的联合调试。使用已知有效数据的目的是跳过不感兴趣的代码片段,或者说是为了防止程序在抵达一个欠缺的代码块前出现拒绝信息。使用故意错误数据的目的是利用已知或我怀疑将成为代码中缺陷的情况。最后,使用随机数据的目的就是看看会发生什么。

阅读全文 »

符号执行

概念及原理介绍

符号执行是程序分析的一种思路,可以类比解方程:我不知道该怎如何确定输入(或感兴趣的变量等)和程序执行路径之间的关系,但我可以把输入设为变量x(此为“符号”),然后对照纸面上的程序,每执行一步,我就记录下来它执行的条件(此为“执行”),作为方程的一部分。如果碰到分支语句,就分为两个方程,一个方程对应一个分支执行条件。如此等到程序结束,我就有了一堆方程,每个方程对应一个执行路径。想分析哪个路径,解对应的方程就行了。通过这样的分析技术,就可以获得让特定区域执行的输入。

阅读全文 »

动态污点分析

污点分析可以抽象成一个三元组<sources,sinks,sanitizers>的形式,

source 即污点源,代表直接引入不受信任的数据或者机密数据到系统中;sink即污点汇聚点,代表直接产生安全敏感操作(违反数据完整性)或者泄露隐私数据到外界(违反数据保密性),一般是某些敏感函数,可能是已经暴露出来的漏洞点;sanitizer即无害处理,代表通过数据加密或者移除危害操作等手段使数据传播不再对软件系统的信息安全产生危害.

阅读全文 »

堆溢出

本文章首先介绍堆的基本单位的结构(chunk),之后介绍了堆的分配和释放函数,通过一个实例分析了堆溢出漏洞的危害(DWORD SHOOT),最后介绍了另外两种利用堆溢出的漏洞(Double free和Unlink)

阅读全文 »

Frida是一款轻量级HOOK框架,可用于多平台上,例如android、windows、ios等。frida分为两部分,服务端运行在目标机上,通过注入进程的方式来实现劫持应用函数,另一部分运行在系统机器上。frida上层接口支持js、python、c等。

APK逆向方式,frida

阅读全文 »

每天一道CTF,日积月累,期待进步!

SQL注入攻击,union联合查询和 SQLMAP;SQL盲注

阅读全文 »

IoT固件简介

硬件调试接口方法方便了维护客户,但有时也方便了不速之客,软件如果留一个后门是便于维护,但密码太简单的话容易被破解或者猜测,或者容易让别人从固件里分析出来。结论是目前部分智能设备的架构存在一定安全隐患。
智能设备固件存在flash里,flash没有保护固件被非法读取的措施。现在大多数设备的FLASH和RAM、CPU分别独立,这样是特别容易被提取固件的,拆下FLASH用编程器直接能读到flash里面的内容了。如果FLASH和RAM集成在CPU上,并且开启了加密的话这样就会比较难提取固件,也使设备更加安全。

阅读全文 »

每天一道CTF,日积月累,期待进步!

PHP审计,后门扫描

阅读全文 »