- 博客(50)
- 资源 (4)
- 收藏
- 关注
原创 基础ROP篇1
ROP (Return-Oriented Programming)是为了程序编译后存在如非执行(NX)页或代码签名等保护机制时,仍能执行任意代码一种手段;其主要思想是在“gadget” 指的是目标程序或系统库中的一小段机器指令序列,这些序列以 ret指令结束。之所以称之为 ROP,是因为核心在于利用了指令集中的 ret 指令,改变了指令流的执行顺序。ROP 攻击一般得满足如下条件假设有以下几个 x86 架构的指令序列作为 gadgets,可以通过组合这些gadgets构造一个执行序列。
2024-06-27 17:07:06
935
原创 缓冲区溢出
栈溢出指的是程序向栈中某个变量中写入的字节数超过了这个变量本身所申请的字节数,因而导致与其相邻的栈中的变量的值被改变。现在新版的很多编译器都是默认带上安全配置,除了上面的PIE,还有NX保护等,随着这些保护的开启对应以往直接向栈或者堆上直接注入代码的方式就不能实现了,后面主要思路就是ROP(Return Oriented Programming)。EBP(Base Pointer)是栈帧基址指针寄存器,存放执行函数对应栈帧的栈底地址,用于C运行库访问栈中的局部变量和参数。一般来说,我们会有如下的覆盖需求。
2024-06-27 15:26:35
651
原创 流媒体协议
流媒体协议是用于网络上音视频数据传输的一组规则和标准。这些协议确保了数据可以以流的形式从服务器传输到客户端,同时为用户提供了播放、暂停、快进和倒带等控制功能。
2024-06-20 16:19:01
1142
原创 RTSP协议分析与安全实践
RTSP协议,全称实时流协议(Real Time Streaming Protocol),前文已经简单介绍了RTSP相关协议;这里再提一下RTSP和RTP/RTCP、RSVP的关系;
2024-06-20 16:17:30
903
原创 Matter分析与安全验证
Matter是一项智能家居的开源标准,由连接标准联盟制定、认证、推广,该标准基于互联网协议(IP),遵循该标准的智能家居设备、移动应用程序和云服务能够进行互联和通信。—wiki提供前面是关于matter的简单介绍,然后一些介绍和使用详细的说明以及源码,官方和网上其他文章都很多,这里罗列了一些,可以自行阅读学习,这里不在赘述;
2023-12-13 17:29:59
1485
原创 Burpsuite插件-Brida
配置界面从上往下依次是Pyro服务状态应用状态是否使用虚拟的python环境python可以执行文件的路径Pyro服务地址(默认)Pyro端口(默认)frida-complile可以执行文件的路径是否使用旧版本的frida-complile,尽量使用10以下的版本,一开始用默认版本会出现问题,hook上了,但是总有奇怪的报错包含所有Brida JS文件的文件夹,第一次需要先生成一下默认的JS文件。
2023-12-13 17:19:32
1335
原创 Objection
Objection是一个基于Frida的命令行hook工具,用于移动设备的运行时探索。它可以安装在Windows环境下,并解决多进程应用导致的程序闪退问题。Objection的使用包括启动Frida-server并转发端口,附加需要调试的app,进入交互界面。它提供了丰富的调试界面API,包括环境打印,内存搜索,堆内存搜索和操作,以及Android hooking等功能。此外,它还可以关闭app的ssl校验,尝试关闭app的root检测,以及模拟root环境等。
2023-12-12 16:50:59
1196
原创 通过一道CTF题目来认识一下Frida
此外,Frida还提供了多种工具,如frida-apk、frida-compile和frida-ps。因为要拿flag的话,需要进行爆破,从题目提示得知,5位数字,然后经过eeee处理后等于bytes§就是对应的flag了;登录到执行环境下,也就是手机查看环境,下载对应的版本和环境的frida-server,并移动到手机上执行;当然frida支持多种方式调用,上面是js脚本,可以直接用frida命令的方式调用;有了关键字,反编译app后搜索一下,就在main中,可以清晰的看到入口处理逻辑;
2023-12-12 16:09:30
1268
原创 FUZZ工具—Boofuzz框架实际使用
接着上一篇文章来对框架进行实际的使用;官方提供了很多案例模板,且网上关于boofuzz的使用介绍很多,也比较成熟,在各个领域都有,可以通过官方提供的案例也看得出来,然后覆盖的面也非常的全,目前也就只有ble、zigbee这种无线电通信协议的覆盖不了,下面用一个简单的测试来学习一下boofuzz的使用,来挖掘一下漏洞;
2023-06-25 16:10:30
3019
5
原创 FUZZ工具—Boofuzz框架
Boofuzz是一个基于著名的Sulley模糊测试框架的分支和继承者。除了修复了许多bug,Boofuzz还致力于扩展性。其目标是:fuzz everything。
2023-06-25 15:48:29
1211
原创 微信接口测试拓展
最近收到一个SRC提交的漏洞,泄露了微信小程序的appkey和appSecret;于是乎为了搞清楚影响,漏洞风险和利用方式,便有了这篇文章;在了解漏洞风险之前先来了解一下微信的几个平台;
2023-06-21 17:39:57
437
原创 C/C++的命令执行分析
wiki百科上描述:任意代码执行(简称ACE)是指攻击者能够让目标电脑或目标进程中执行任意命令或代码[1]。如果系统有地方可以被黑客利用以执行任意代码,则此处被称为任意代码执行漏洞。特别设计利用此一漏洞的程式,称为任意代码执行漏洞利用。可以通过网络(尤其是通过互联网等广域网)让目标电脑(远程电脑)执行任意代码的能力称为远程代码执行(RCE)。wiki的描述比较偏于云端的场景,这里场景就是指用户通过浏览器或者其他辅助程序提交数据,由于执行端没有针对执行函数进行过滤,导致在没有指定绝对路径的情况下执行命令。
2023-06-21 17:13:15
1100
1
原创 PWN利器-pwntools安装、调试教程一览
pwntools是一个CTF框架和漏洞利用的python开发库,专为快速开发而设计,旨在使漏洞利用编写尽可能简答
2022-12-05 16:45:53
6603
1
原创 GDB使用技巧和相关插件
参考:《100个gdb小技巧》链接中的文档有许多关于GDB的使用小技巧;gdb中使用“x”命令来打印内存的值,格式为“x/nfu addr”。含义为以f格式打印从addr开始的n个长度单元为u的内存值。参数具体含义如下:a)n:输出单元的个数。b)f:是输出格式。比如x是以16进制形式输出,o是以8进制形式输出,等等。c)u:标明一个单元的长度。b是一个byte,h是两个byte(halfword),w是四个byte(word),g是八个byte(giant word)。
2022-12-05 16:38:14
1551
原创 DDS通信协议与安全实践
DDS(Data Distribution Service)是一套通信协议和 API 标准;它提供了以数据为中心的连接服务,基于发布者-订阅者模型。这是一套中间件,它提供介于操作系统和应用程序之间的功能,使得组件之间可以互相通信。并且提供了低延迟,高可靠的通信以及可扩展的架构。DDS本身是一套标准。由(简称OMG)维护。OMG是一个开放性的非营利技术标准联盟,由许多大型IT公司组成:包括IBM,Apple Computer,Sun Microsystems等。
2022-09-14 15:40:24
20577
2
原创 Miracast协议
Miracast是由Wi-Fi联盟于2012年所制定,以Wi-Fi直连(Wi-Fi Direct)为基础的无线显示标准。支持此标准的消费性电子产品(又称3C设备)可透过无线方式分享视频画面,例如手机可透过Miracast将影片或照片直接在电视或其他设备播放而无需任何连接线,也不需透过无线热点(AP,Access Point)。...
2022-07-14 15:04:37
1043
原创 智能调试设备动态分析-gdb
在《智能硬件固件分析》中讲了关于固件静态分析部分,从常见的固件获取方式,以及拿到固件后如何分析,涉及到的相关工具,并最后完成自己的静态分析脚本;然后静态分析的弊端也是非常明显,具体可以看以前写的《APP动态分析-Eclipse调试》,《APP动态分析-AndroidStudio调试+IDA 我来了》,就是因为在移动端的静态分析完不成一部分工作,或者说很多问题要通过动态调试来发现,当时讲的动静态分析是根据移动端的分析目的角度来讲的,这里就简单补充一下静态跟动态的区别;...
2022-07-14 14:59:18
438
原创 APP动态分析-Eclipse调试
0x00 开篇这篇也是历史文章,来迁移的;之前说过,用Android Studio和Eclipse对应用进行动态调试的机会会很少,但是最近接触一个项目就需要用到动态调试的技术,而之前已经讲过Android Studio对smali的动态调试了,这里讲下Eclipse对java的动态调试。0x01 动态调试有哪些手段Idea对smali代码进行动态调试,Android Studio是基于Idea修改而来,所以调试方法一样,Android Studio调试smali的话需要安装调试插件Sma..
2021-12-20 17:50:03
3739
原创 APP动态分析-AndroidStudio调试+IDA 我来了
历史文章了,补发上来0x00 前言动态分析(dynamic analysis)是指在严格控制的环境(沙盒)中执行恶意软件,并使用系统检测实用工具记录其所有行为静态分析(static analysis)通过浏览程序代码来理解程序的行为。关于动静态分析,两者目的是相同的,无非是破解软件,分析软件行为,但是动态分析会比静态高效一点,由于对静态分析比较熟悉,先说一下静态分析的思路。确认目的你是要破解APP,为了获取什么:绕过完整性检查; 绕过调试检查;...
2021-12-20 16:46:07
2763
原创 一文了解智能门锁的功能选购和安全性
最近临近双十一,如果大家有要购买智能门锁的需求,可以看这篇文章,如果暂时没有需求,也可以看看这篇文章,了解一下当前智能门锁的功能和安全性;先通过消费者需要购买智能门锁的视角来看;购物网站提供的参数购物网站琳琅满目的需求参数;产品参数通过筛选销量的方式挑选几款产品看参数;某宝参数提供较少,只能看商家有没有贴图出来,不然看不到详细的参数;某东给的参数相对较为详细;参数解析那么我们普通消费者选购的时候如何查看这些参数呢,这里我挑选一下相对专业性强一些或者重要
2021-11-05 14:16:59
1169
原创 硬件设备固件静态分析
IDA静态分析识别固件加载地址(待填)多工具合集扫描参考之前的文章描述:智能硬件固件分析_samli的博客-CSDN博客静态分析,分析完成后,简单写个脚本:#!/bin/bashFileName=$1echo "-----------------------------------------"echo "You FileName :"echo "$FileName"echo "----------------------------------...
2021-09-23 11:31:04
383
原创 elf文件分析--checksec--检查gcc安全编译配置
checksec介绍相关链接:GitHub - slimm609/checksec.sh: Checksec.shchecksec.sh使用截图:checksec源代码分析Checksec是一个bash脚本,用于检查可执行文件的属性(例如PIE,RELRO,PaX,Canaries,ASLR,Fortify Source)。通过阅读源码可以知道,脚本只要调用了readelf来检测二进制文件的特征;所以执行环境中要可以执行readelf,不然会...
2021-09-23 11:22:26
1287
原创 固件解包--binwalk分析
Binwalkbinwalk完整安装binwalk/INSTALL.md at master · ReFirmLabs/binwalk · GitHubbinwalk -hBinwalk v2.2.0-ff34b12Craig Heffner, ReFirmLabshttps://github.com/ReFirmLabs/binwalkUsage: binwalk [OPTIONS] [FILE1] [FILE2] [FILE3] ...Sig...
2021-09-23 11:18:19
3091
原创 固件获取的各类方法
参考:https://bbs.pediy.com/thread-230095.htm智能设备组成先介绍一下智能设备的组成CPU: X86/ARM/MIPS/PPC等内存: SDRAM/RAM存储: Flash/TF卡/SD卡/MMC卡/硬盘串口: 一般电路板会留,做调试用网口: 智能设备联网用USB口: 接U盘做扩展存储用、也可接键盘和鼠标等无线接口: Wifi/蓝牙/ZigeBee等bootLoader: Uboot等操作系统: Linux/RT..
2021-09-23 11:03:31
5187
原创 硬件的各类接口
参考:SPI、I2C、I2S、UART、GPIO、SDIO、CAN、JTAG的区别及使用方法。 - coolyouguo - 博客园SPISPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,越来越多的芯片集成了这种通信协议,比如AT91RM9200。SPI的通信原理很简单,它以主从方式工作,这种模..
2021-09-23 10:58:58
7472
原创 Linux系统特性
Linux系统启动流程Linux 系统启动过程 | 菜鸟教程内核的引导 运行init 系统初始化 建立终端 用户登陆系统(1)典型嵌入式系统的部署:uboot程序部署在Flash(能作为启动设备的Flash)上、OS部署在Flash(嵌入式系统中用Flash代替了硬盘)上、内存在掉电时无作用,CPU在掉电时不工作。(2)启动过程:嵌入式系统上电后先执行uboot、然后uboot负责初始化DDR,初始化Flash,然后将OS从Flash中读取到DDR中,然后启动OS(OS启...
2021-09-23 10:55:22
183
原创 Android反编译实战-去广告
0x00 软件中的广告什么是广告?任何与软件本身无关的内容都属于广告;广告的表现形式很多,有的时候是一个界面(activity),有的时候是局部在上方或下方的一个区域视图(view),有的时候可能是工具条(toolbar),也可能是一个对话框(dialog)里出现广告内容。但是看到的并不一定是表现出来的;有时候看到的区域视图、对话框、工具条都有可能是一个activity。广告来源push推送 第三方SDK广告常见的就是push推送广告,这也就要求了在配置清单xml 中,需要声..
2020-12-25 15:44:02
6312
1
原创 RFID/NFC测试
RFID基础RFID,射频识别(RFID)是 Radio Frequency Identification 的缩写其原理为阅读器与标签之间进行非接触式的数据通信,达到识别目标的目的。RFID 的应用非常广泛,典型应用有动物晶片、汽车晶片防盗器、门禁管制、停车场管制、生产线自动化、物料管理。RFID系统构成标签又可以被俗称为芯片。阅读器会通过自身天线发送一定频率的射频信号,标签通过进入信号区域时产生感应电流或者自身所带的电源产生能量,将自身编码的信息通过卡内置发送天线发送出去,阅读...
2020-07-06 14:36:36
2485
原创 Zigbee抓包方式
介绍多种Zigbee抓包方式:1.Ubiqua使用教程网上非常多也非常清晰;但是Ubiqua是收费软件,较贵;2.Killerbee套件https://github.com/riverloopsec/killerbeeAttify的集成killerbee的GUI工具:https://github.com/attify/Attify-Zigbee-Framework运行installer.sh安装python main.py启动支持CC2530 or...
2020-07-06 14:15:59
4181
2
原创 通过Wireshark来了解Zigbee协议
简介 ZigBee是一种新兴的短距离、低速率无线网络技术。ZigBee技术的命名主要来自于人们对蜜蜂采蜜过程的观察,蜜蜂在采蜜过程中,其舞蹈轨迹像跳着“Z”的形状,由于蜜蜂自身体积小,所需要的能量小,又能传送所采集的花粉,因此,人们用ZigBee技术来代表具有成本低、体积小、能量消耗小和传输速率低的无线通信技术,中文译名通常称为“紫蜂”技术。物理层(PHY)IEEE802.15.4协议的物理层是协议的最底层,承担着和外界直接作用的任务。它采用扩频通信的调制方式,控制RF收发器工作...
2020-07-06 10:38:55
2008
翻译 OWASP固件安全测试
Firmware Security Testing Methodology(FSTM)https://github.com/scriptingxss/owasp-fstm/ 1.信息收集 获取有关目标设备固件的所有相关技术文档的详细信息 2.获取固件 使用列出的一种或多种建议的方法获得固件 3.分析固件 检查目标固件的特征 4.提取文件系统 ..
2020-05-21 20:41:17
2186
原创 常见高危端口及其利用方式
记录一下常见高危端口及其利用方式 21 ftp 22 SSH 23 Telnet 25 SMTP 53 DNS 69 TFTP 80 web 80-89 web ...
2020-05-21 19:54:27
8913
2
原创 蓝牙抓包重放实例
抓包流程参考《低功耗蓝牙数据包嗅探》找到设备mac地址,过滤地址,手机连接设备,这里有一个问题,手机连接设备的数据包不一定能抓包,需要多尝试几次;在众多广播包中找到关键的几条控制命令,如下,下面为开锁的写入数据请求;环境:kali工具:蓝牙适配器 bluez hcionfig hcitool gatttool工具命令解析:查看蓝...
2020-04-11 16:26:59
5468
2
原创 Wi-Fi设备抓包
Wi-Fi抓包亦可直接网上搜Wireshark 抓包 或者Wireshark 教程,很多;这里就提几个注意点就好了。工具:无线网卡,推荐使用可收发信号,免驱动的,支持2.4和5ghz的,买了好几个坑货; wireshark;环境:Windows10;插上网卡,开启Wi-Fi后,用手机连上测试一下能否正常使用,没有问题后,打开下面这个界面;此时,网络连接会多出一个虚...
2020-04-11 16:13:37
2201
原创 Android平台WebView控件存在跨域访问高危漏洞
0x00手工自检:1. 检查应用是否使用了webview控件;如下图,WebView webview;定义了webview控件,即使用了webview控件。2. 若使用了webview控件,则检查内置webview的Activity是否可被导出;在上图中可以看到,内置webview的Activity是MainActivity,查看MainAcitivity是否可导,需要到AndroidM...
2020-04-08 20:49:52
1787
原创 Android APP SSLPinning证书绑定绕过
现在测试过程中有没有感觉遇到能直接抓包的APP,简直要拜菩萨,经常测试APP的心路历程是,欸,我的证书怎么又出问题了,重新导证书后,欸,怎么还是抓不到MMP…。为什么https的网站使用伪证书可以抓到,而在app里面同样的方法就抓不到?浏览器允许用户忽略证书告警; 浏览器允许用户导入证书到证书信任区,从而伪造证书;也就是我们常用的burpsuite导证书操作,所以网站可以利用这种方式...
2020-03-20 14:36:20
2878
原创 MobSF入坑
很久以前写的文章了,顺带更新一下。1.本地部署以下平台搭建均为在window下;静态分析环境搭建:下载,解压,用pip安装MobSF Python 依赖包;命令:python C:/python/script/pip.exe install -r C:\MobSF\MobileSF-master/requirements.txt问题一:没有pip命令,上python官网...
2020-03-20 14:20:50
3257
2
原创 drozer之玩转sieve
安装drozer准备:PC上需要安装adb 安装JDK 安装python 手机上也要安装drozer agentdrozer下载地址:https://labs.mwrinfosecurity.com/tools/drozer/里边包含agent.apk。参考URL:http://www.blogjava.net/qileilove/archive/2015/03/18/42...
2020-03-17 17:25:48
1402
5
原创 阿里Android开发手册-安全
《阿里Android开发手册》中关于安全部分的说明 1. 【强制】禁止使用常量初始化矢量参数构建 IvParameterSpec,建议 IV 通过随机方 式产生。说明:使用常量初始化向量,密码文本的可预测性会高得多,容易受到字典式攻击。 iv 的 作用主要是用于产生密文的第一个 block,以使最终生成的密文产生差异(明文相同 的情况下),使密码攻击变得更为困难。正例...
2020-03-16 18:23:52
518
2022工业互联网大赛-杭州-CTF题目
2022-09-14
TiWsPc.zip
2020-07-06
nRF_Sniffer_UG_v2.2--nrf官方说明文档.pdf
2020-03-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人