毕业后参加工作,做的第一件事就是这个,目前算是告一段落。回想起来感觉还是挺有纪念意义的。学校期间因为做的模糊测试,纯软件方面,所以一开始搞硬件走了很多弯路,陆陆续续搞了近一年,虽然是事后,其实想了想当时的过程,感觉要是再做类似于的估计能省很多时间,当时的经历还是挺有意思的。加上最近看脱口秀有点上头,老是想写点东西. 正好可以自己总结一下,要是有幸有人看到,并且觉得有些用的话那是极好的。 话说当年刚毕业,加入玄武。做点什么呢?? xxx: 这有个快充安全研究可以做 我:快充安全?(说实话,平时背着ThinkPad那坨大电源,用着5V/1A的手机充电器,还真不知道快充是啥…..) xxx:

Read More

TA:Tracking Area; 这块的概念主要是混在cell里面,容易乱. TA/TAI这块以及相关内容在LTE环境下伪基站,降级攻击这块使用是相当广泛的.联系上tracking area update request, reject. TA只要用途是方面核心网MME对用户的追踪,因为一般UE不会一直保持connect的状态,此时要是来了一个电话或者其他信息的时候,MME会将依据TA向该UE进行Paging. 一开始注册入网的时候,UE发起Attach Request,而后MME会回应Attach accept,会给UE分配一个初始的TAI List(大小在1~16),要是在这个区域

Read More

做了大半年的LTE/5G相关,算是基本入门了。因为概念、内容比较多,整个经历比较痛苦。一开始啃文档,实在看不懂+看不下去。转而看论文,舒服了很多,再转向文档也清晰了很多。后续可以捣鼓sdr,在看完文档后调sdr简直太舒服了,尽管oai的代码风格,一言难尽。。。 整个过程比较常规: 网络整体架构+控制面消息+历史研究+协议标准捡漏+sdr实验验证。 将以前的部分内容用空余时间给整理了一下。慢慢整理。 目录 * 5G安全-概念之TATAI * 5G安全-发现的几个小问题 * 5G安全-RRCConnectionRelease Redirected分析

Read More

在看协议的时候发现了几个小问题,其实当时也没觉得是什么问题,有个问题是在1月份的左右发现,也没咋关注了,到了6,7月整理内容的时候想着整理一下信息给3GPP报一下,发现给最新的文档竟然给修了. 感觉挺诧异的……分享一下,危害不大,攻击成本太高. EN-DC UE Capbility Information问题 这个是在看EN-DC,非独立组网的注册流程发现.详细可以参考: https://www.eventhelix.com/5G/non-standalone-access-en-dc/en-dc-secondary-node-addition.pdf 其中有一个流程是基站给UE发送UE

Read More

这个问题是在16年被国内研究员发现提出,并实现了完整的攻击。因为这是一个很经典的问题,在学习LTE/5G安全过程中复现一下也是很有必要的。我大概是在今年初分析复现这个问题。 RRCConnectionRelease在5GNR中是RRCRelease. RRCConnectionRelease正常的使用是: 由基站发给UE,作用包括释放一个rrc connection… 基本原理 当在nas层reject当前连接后,ue接收后,会触发基站发送rrcconnectionrelease给UE,此时UE会对rrcconnectionrelease包进行解析,因为本身也是连接出现问题才会触发

Read More

基本信息 * SVG相关漏洞 * 发现者:ifratric (Project Zero) PoC 37 feConvolveMatrix是SVG的一个滤镜元素,设置滤镜的一些效果。filter标签用来定义滤镜 图形元素对滤镜的引用,给图形添加滤镜 38 出错的点在于feConvolveMatrix元素中的kernelUnitLength属性值的处理。 kernelUnitLength in W3C: The first number is the value. The second number is the value. A negative or zero value is

Read More

其实关于这个一个论述,各种说法也是。要么就是站在这个理论,要么就是站在那个高度上,感觉还是说得太虚、太扯了。 最近看了一个描述,感觉很不错,有一种看着就觉得很有道理,就是那种感觉是有道理,但是却说不清楚。。。 如何判断马克思主义是不是伪科学? 如果马克思主义的信仰者在心里设定一些规则,认为如果这些规则被破坏,就会认为马克思主义是伪科学,那么马克思主义就是科学的;否则的话,那就是伪科学了。 参考 http://mp.weixin.qq.com/s/fK6QGNWR8tTjG9twOewDkQ

Read More

使用run trace跟踪代码执行,用于去除花指令以及一些混淆 1. 打开run trace 2. 设置起始位置 和 结束位置 断点 3. 执行 跟踪步入 或 跟踪步过 4. 查看 run trace视图,则为执行过的语句代码 使用该方法也可以在一些判断条件很多的代码中 直接提取出该条件下所执行的代码。 参考: http://blog.csdn.net/liujiayu2/article/details/56940831

Read More

散布/聚集 I/O 目的是在单次系统调用(I/O操作)中操作多个缓冲区。按我们平时的读写操作,** read ** 以及 ** write *,都是将数据读入单个缓冲区,从单个缓冲区中写出。 同样也有对应的操作接口: 107 都包含三个参数,fd是需要操作的文件;第二个是iovec结构的数组,即缓冲区,第三个指示数量。 iovec结构 108 用基址和长度来描述一个缓冲区。读入的数据将放入iov_base~iov_base+iov_len这片内存区域中。 segment用来表示一个缓冲区。 * 读操作 *:从文件中读入count个segment到 iov指向的缓冲区数组中。 * 写操作 **;

Read More

简介 本章主要介绍C所提供的标准I/O操作。不同于前面的open只能在Linux上被支持,C标准接口能够在不同系统中被支持。两个基本的概念,关于底层的I/O操作,效率问题。 1. 磁盘,读写最下层就是磁盘的操作。所有的磁盘操作都是基于块进行,这句话的意思就是如果跨越块进行读写会导致效率降低,因此读写请求若选择块大小的整数倍和约数倍的话,就能够保证不会出现跨越块进行读写的问题。 2. 内存,常听到的内存对齐问题。CPU进行读写数的时候,对于32位的机器,一次读取写入4字节,并且是按照起始地址开始的,例如CPU要读取一个值时,它只会从4的倍数的地址进行读写,只会读取0,4,8这些地址(起始地

Read More

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×