自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 burpsuite抓包

新建一个情景模式,进行如下设置,IP和端口依然和bp上设置的保持一致(插件用的 SwitchyOmegs)其实抓取PC端也可以进入到程序里面的网络设置界面直接设置代理就不需要proxifier联动bp。手机进入网络,属性,设置代理,IP和端口和bp上设置的相同(和电脑在同一网段下)了,但是有些应用程序没有网络设置选项,所以bp联动proxifier抓包更全面。进入代理服务设置里面进行如下设置,IP和端口与bp保持一致。进入bp后,进入Proxy -> Options 界面。浏览器搜证书并导入证书。

2024-04-25 20:04:00 269

原创 挂载UBI文件系统

UBI文件系统是linux-2.6.27后内核新加入的flash文件系统,开发环境主机要求至少是在linux2.6.27后的内核,且已经有nandsim,ubi等相关模块。UBI文件系统不能直接挂载,而是要用 nandsim 模拟出一个 mtd 设备,而且这个 mtd 设备要与 ubi 镜像的参数保存一致,否则后面的挂载会失败。这些参数包括 mtd 设备的物理块擦除大小 (Physical Erase Block, PEB) 和 页大小 (Page Size)。

2024-04-10 17:10:17 924 1

原创 提取iot设备固件的思路

显示内存,能够把内存显示出来。发现只要是Nor flash,md可以把Nor flash的内容显示出来(因为nor flash可以通过CPU直接寻址),这就相当于md命令可以提取固件。如果还是找不到的话就重启一下,重启时不要打断,看它会不会打印更多flash地址分布信息,通过这些信息基本就能找到起始地址把固件提取出来了。第二步,用md命令提取固件信息。Level2级别是Nand flash里有其他文件系统,这里有一个命令先把nand flash读到内存,然后用md把内存读出来,这个简单的思路就可以搞定了。

2024-03-29 10:05:56 329

原创 john-彩虹表攻击

彩虹表是一种预先计算好的密码哈希值和明文密码的对应关系表。John the Ripper可以使用彩虹表进行密码破解,避免了实时计算哈希值的过程,从而提高破解速度。然而,彩虹表攻击的效果受限于所使用的彩虹表的大小和覆盖范围。

2024-03-26 11:31:11 310

原创 Base64解码

由于Lucy只有4个字母,所以按3个一组的话,第二组还有两个空位。所以需要用00000000来补位,这里就需要注意,因为是需要补齐而出现的0,转化成十进制的时候就不能按常规用base64编码表来对应,所以不是A,编码后对应 “=”经过base64编码的。

2024-02-23 19:30:06 474

原创 Tenda CVE-2018-18708 漏洞复现

函数中,第12、13、16行获取Web请求中名为“Entrys”、“Mitinterface”和“page”的变量,将其值存储在指针变量V9、V8和V7中,前两个变量未经处理直接通过sprintf传递到s中,“CMP R3,#0这行就是如果 R3为0的时候就会跳转到以下报错代码,反之跳转到loc_2E558代码。那就修改MOV R3,R0patch为MOV R3,#1,以此来强制执行loc_2E558代码。工具:binwalk,qemu,ida,burpsuite,gdb。用户级调试来模拟路由环境。

2024-02-23 11:23:42 444

原创 docker安装与使用

Docker是一种轻量级的虚拟化技术,它可以让开发者将应用打包到一个可移植的容器中,然后安装到任何运行Linux或Windows等系统的服务器上。相较于传统虚拟机,Docker容器提供轻量化的虚拟化方式、安装便捷、启停速度快。Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。

2024-01-19 10:40:36 361 1

原创 linux实用命令

压缩多个文件:tar zcvf FileName.tar.gz DirName1 DirName2 DirName3 ...压缩:tar jcvf FileName.tar.bz2 DirName。压缩:tar zcvf FileName.tar.gz DirName。压缩:tar Zcvf FileName.tar.Z DirName。解压:tar jxvf FileName.tar.bz2。find / -name "文件" //文件全局查找。

2024-01-17 20:00:00 401

原创 linux设置开机自动启动

Linux开机的时候,会加载运行/etc/init.d目录下的程序,因此我们可以把想要自动运行的脚本放到这个目录下即可。linux在“/etc/rc.d/init.d”下有很多的文件,每个文件都是可以看到内容的,其实都是一些shell脚本或者可执行二进制文件。# 1 - 单用户模式   进入方法#init s = init 1。# 6 - 重新启动 (千万不要把initdefault 设置为6 )# 0 - 停机(千万不能把initdefault 设置为0 )# 2 - 多用户,没有 NFS。

2024-01-17 10:28:02 421

原创 编译busybox

这个选项是一定要选择的,这样才能把busybox编译成静态链接的可执行文件,运行时才独立于其他函数库.否则必需要其他库文件才能运行,在单一个 linux内核不能使他正常工作.生成的 _install 目录下会有 bin、dev、sbin、usr 这四个目录以及 linuxrc 程序文件。根据需求,可以使用命令来扩展自定义 BusyBox 的功能选项:make menuconfig。执行命令:make install //将生成 _install 文件。下载对应版本的busybox。

2023-12-26 20:06:04 378 1

原创 利用FLIRT恢复静态编译程序的符号

4 可能会报错:Fatal [/home/chen/flair70/bin/linux/libc.a] (libc-start.o): Unknown relocation type 42 (offset in section=0x19f1).在IDA的插件目录下有一个flair70.zip的压缩包,里面放着各个版本的FLAIR解析器,win的,mac的,linux的都有。2 库文件的地址:/usr/lib/下的 libc.a 库文件。

2023-12-21 18:42:18 975

原创 john的下载和使用教程

在合法的情况下,需要使用John the Ripper软件来测试和加固你自己的密码安全,为你提供的一些基本的下载和使用指南。注意,John the Ripper是一个密码破解工具,仅在授权的情况下使用,以测试密码强度和提供安全建议。

2023-12-20 11:25:13 2599 1

原创 Frida绕过SSL认证

2 frida -U -l script.js -f package.name //通过 USB 连接到设备并在 package.name 应用程序上运行 script.js 脚本。2 https://github.com/frida/frida/releases //下载对应版本的服务端frida。6 adb push C:\xxx\cert-der.crt /data/local/tmp //上传证书。1 frida-ps -Ua //列出运行中的程序(查看包名很方便)

2023-12-08 10:21:13 499

原创 DIR-823G漏洞复现 (CVE-2023-26616)

查看sub_469F78函数,分析发现栈溢出由于使用strncpy,V104-V111字符数组长度64,分别存储URL1-URL8,URL1-URL8的长度未进行限制,因此发生溢出。由此反向推断函数调用链为:main()->sub_423F90()->sub_42383C()->(LOAD段)sub_46B6E8->sub_469F78。sub_42383C调用off_588D80表中的内容进行比对,off_588D80表中存储的函数对应的动作,sub_46B6E8位于该表中。FirmAE仿真路由环境。

2023-11-15 10:25:10 127

原创 恢复函数名

通过bindiff有符号的和无符号的文件恢复函数名(一半很少用bindiff这样的重型工具)用sigmake来处理生成的pat文件,并生成一个签名文件。在IDA中shift+F5,选择添加sig文件进行解析。将生成的签名文件复制到IDA的/sig/目录中。用FLAIR解析器为该库创建一个pat文件。找到源文件,编译源文件来生成新的符号表。找到加载地址、起始地址和结束地址。找到用于静态编译的静态库。通过python脚本恢复。

2023-11-09 16:13:04 105 1

原创 Cygwin建立eCos开发环境

Cygwin是许多自由软件的集合,最初由Cygnus Solutions开发,用于各种版本的Microsoft Windows上,运行类UNIX系统。Cygwin的主要目的是通过重新编译,将POSIX系统(例如Linux、BSD,以及其他Unix系统)上的软件移植到Windows上。简言之,cygwin是一个在windows平台上运行的unix模拟环境,可以在windows上执行linux命令的工具集。

2023-11-07 20:04:45 87

原创 DIR-859漏洞复现(CVE-2019-20215)

查看ssdpcgi_main,获取环境变量,并判断是否带单引号,我们可以构造的环境变量时ST,即V2,可以在V2中添加待执行的命令,需满足V2开始为urn:或uuid:。发送ssdp:discover数据包,使main函数调用ssdpgi_main。函数结束时会执行V2字符串中包含的命令,V2由传入参数构成。(应该是lxmldbc_system(v2),软件问题)固件版本:DIR859Ax_FW105b03.bin。工具:FirmAE、binwalk、ida。虚拟机:Ubuntu18.04。

2023-10-11 17:43:07 115

原创 POC学习记录

指 Proof of Concept(概念验证),是指一个可行性验证,即通过构建一个小型系统或单项功能来验证技术的可行性和正确性。POC 脚本,就是为了验证特定安全漏洞或安全问题而编写的脚本,可用于检测该漏洞是否存在,以及漏洞的利用方式和危害范围。

2023-09-14 10:03:47 65 1

原创 DIR619L命令注入漏洞复现(CVE-2018-20057)

在网上找到了解决方法,上面错误“类型错误:需要类似字节的对象,而不是字符串”,在Python3中:因为3.x中字符都为unicode编码,函数b64encode的参数的数据类型是bytes类型的字符串对象,而我们给的是str类型的变量,所以必须进行转码。其次,由于该漏洞是在身份认证成功之后才可实现命令注入,需要先登录输入用户名和口令。查看ida中的反编译代码,在formSysCmd函数中中,首先获取sysCmd参数,然后通过snprintf写入栈中变量,直接调用system函数执行该参数内容。

2023-09-11 19:21:15 174 2

原创 QEMU仿真路由器

由此可知,该固件的内核是32位大端序(mips),因此下载其中的内核以及镜像文件,都放到新建的文件夹(mips)中在mips文件夹中新建qemu启动脚本,命名为 start.shvim /opt/tools/mipsel/start.sh,写入以下配置启动qemu,运行start.sh脚本(./start.sh)默认的登录名和密码都是root。

2023-09-05 09:52:24 523 3

原创 常见的C、PHP中和特殊的危险函数

代码执行命令执行在变量可控的情况下,我们可以包含任意文件,从而达到getshell的目的另外,在不同的配置环境下,可以包含不同的文件。

2023-08-16 18:41:25 94 1

原创 FreeRTOS实时操作系统来写一个程序

接下来选中Middleware...下的FREERTOS,选择CMSIS_V1,然后切换到Task and Queue页面,点击Add添加任务,添加时只改变任务的优先级为High,其他默认就行了,同理添加第二个任务,也只改变任务优先级为High。首先安装STM32CubeMX,CubeMX是ST公司出品的一款图形化代码生成工具,通过图形化界面,可以非常直观的配置好各种片上外设,时钟,中断,DMA等等各种设备的参数,并直接生成初始化代码。成功添加后,有我们添加的两个任务和一个default任务,如图所示。

2023-08-09 09:57:23 139

原创 使用OpenOCD提取STM32固件

环境:Ubuntu22.4软件:OpenOCD(Open On-Chip Debugger)使用apt直接安装。

2023-08-03 19:16:06 793

原创 Keil5建立STM32工程(二)

接下来配置FWLB文件夹,同上进入到\Libraries\STM32F10x_StdPeriph_Driver\src文件夹里面,src里面的文件全选,添加。自建文件夹下的\Libraries\STM32F10x_StdPeriph_Driver\inc文件夹,然后选择文件夹。最后配置我们的USER文件夹,同上进入我们自建文件夹,然后进入USER文件夹,添加下图红线以上三个文件。最后编译,出现0Error,0Warning,工程创建成功。同上操作,再添加CMSIS文件夹和User文件夹。

2023-07-27 11:06:12 651 1

原创 Keil5建立STM32工程(一)

同上在固件库下的Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm里面复制名为startup_stm32f10x_hd_vl.s这个文件以及如下图在startup同级下的三个文件都复制到我们建的CMSIS文件。首先在桌面新建一个文件夹,里面建Doc文件,主要用于程序说明,Libraries文件,也就是我们的包文件,库文件,Listing文件,还有输出文件Output,工程文件Project,最后是我们自己用到的文件夹User。

2023-07-27 09:37:40 981 1

原创 阻止栈溢出被利用的防护绕过思路

大家都熟悉的安全漏洞一般都是SQL注入漏洞、缓冲区溢出漏洞、格式化字符串漏洞、XXS跨站脚本漏洞,其中栈溢出漏洞作为缓冲区溢出漏洞的一种形式,在网安中还是比较常见的,本文将从栈溢出漏洞的原理、栈溢出漏洞利用方式及防护手段进行介绍。栈溢出漏洞是指当程序向栈中写入数据时,超过了栈空间所规定的大小,导致数据覆盖了其他内存区域。攻击者可以通过精心构造输入数据,使得程序在执行返回指令时跳转到攻击者设定的指令序列上,以达到劫持程序控制流的目的。

2023-07-19 21:20:41 152

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除