diff --git a/2000/01/01/hello-world/index.html b/2000/01/01/hello-world/index.html index ed3f6985..eb8990b4 100644 --- a/2000/01/01/hello-world/index.html +++ b/2000/01/01/hello-world/index.html @@ -548,7 +548,7 @@ - 21 + 22 日志 @@ -559,7 +559,7 @@
- 9 + 8 分类
@@ -570,7 +570,7 @@
- 43 + 44 标签
@@ -641,7 +641,7 @@ - 64.4k + 67.6k diff --git a/2018/11/16/BIBA访问控制模型实现(python)/index.html b/2018/11/16/BIBA访问控制模型实现(python)/index.html index 20f6f45b..5a2a8282 100644 --- a/2018/11/16/BIBA访问控制模型实现(python)/index.html +++ b/2018/11/16/BIBA访问控制模型实现(python)/index.html @@ -720,7 +720,7 @@ - 21 + 22 日志 @@ -731,7 +731,7 @@
- 9 + 8 分类
@@ -742,7 +742,7 @@
- 43 + 44 标签
@@ -829,7 +829,7 @@ - 64.4k + 67.6k diff --git a/2018/12/15/miio-control/index.html b/2018/12/15/miio-control/index.html index 39858114..42c7753d 100644 --- a/2018/12/15/miio-control/index.html +++ b/2018/12/15/miio-control/index.html @@ -622,7 +622,7 @@ - 21 + 22 日志 @@ -633,7 +633,7 @@
- 9 + 8 分类
@@ -644,7 +644,7 @@
- 43 + 44 标签
@@ -731,7 +731,7 @@ - 64.4k + 67.6k diff --git a/2018/12/23/基于规则引擎发现IOT设备/index.html b/2018/12/23/基于规则引擎发现IOT设备/index.html index d7e69853..478313fd 100644 --- a/2018/12/23/基于规则引擎发现IOT设备/index.html +++ b/2018/12/23/基于规则引擎发现IOT设备/index.html @@ -622,7 +622,7 @@ - 21 + 22 日志 @@ -633,7 +633,7 @@
- 9 + 8 分类
@@ -644,7 +644,7 @@
- 43 + 44 标签
@@ -731,7 +731,7 @@ - 64.4k + 67.6k diff --git a/2018/12/25/TCPDUMP拒绝服务攻击漏洞/index.html b/2018/12/25/TCPDUMP拒绝服务攻击漏洞/index.html index b31e872d..2ef00d99 100644 --- a/2018/12/25/TCPDUMP拒绝服务攻击漏洞/index.html +++ b/2018/12/25/TCPDUMP拒绝服务攻击漏洞/index.html @@ -627,7 +627,7 @@ - 21 + 22 日志 @@ -638,7 +638,7 @@
- 9 + 8 分类
@@ -649,7 +649,7 @@
- 43 + 44 标签
@@ -736,7 +736,7 @@ - 64.4k + 67.6k diff --git a/2019/01/16/wifi半双工侧信道攻击学习笔记/index.html b/2019/01/16/wifi半双工侧信道攻击学习笔记/index.html index 709fe8ce..ec67a16a 100644 --- a/2019/01/16/wifi半双工侧信道攻击学习笔记/index.html +++ b/2019/01/16/wifi半双工侧信道攻击学习笔记/index.html @@ -750,7 +750,7 @@ Server -------wire----------| - 21 + 22 日志 @@ -761,7 +761,7 @@ Server -------wire----------|
- 9 + 8 分类
@@ -772,7 +772,7 @@ Server -------wire----------|
- 43 + 44 标签
@@ -859,7 +859,7 @@ Server -------wire----------| - 64.4k + 67.6k diff --git a/2019/02/22/qq数据库的加密解密/index.html b/2019/02/22/qq数据库的加密解密/index.html index 015ade3c..619d2981 100644 --- a/2019/02/22/qq数据库的加密解密/index.html +++ b/2019/02/22/qq数据库的加密解密/index.html @@ -599,7 +599,7 @@ - 21 + 22 日志 @@ -610,7 +610,7 @@
- 9 + 8 分类
@@ -621,7 +621,7 @@
- 43 + 44 标签
@@ -708,7 +708,7 @@ - 64.4k + 67.6k diff --git a/2019/03/16/小米固件工具mkxqimage/index.html b/2019/03/16/小米固件工具mkxqimage/index.html index 1984e2eb..64be699a 100644 --- a/2019/03/16/小米固件工具mkxqimage/index.html +++ b/2019/03/16/小米固件工具mkxqimage/index.html @@ -79,18 +79,18 @@ - + - + - + - + @@ -397,7 +397,7 @@ - 690 字 + 926 字 @@ -411,7 +411,7 @@ - 2 分钟 + 3 分钟 @@ -433,8 +433,10 @@

小米固件工具mkxqimage

小米自己改了个打包解包固件的工具,基于 trx 改的(本质上还是 trx 格式),加了 RSA 验证和解包功能,路由系统里自带:

1
2
3
4
Usage:
mkxqimg [-o outfile] [-p private_key] [-f file] [-f file [-f file [-f file ]]]
[-x file]
[-I]

-

固件解包

固件工具mkxqimage完成对固件的解包,在解包前先检查Checksum是否正确,然后利用RSA公钥/usr/share/xiaoqiang/public.pem检查RSA签名,这两个步骤通过后,根据[0x0C]的固件类型,以及[0x10]、[0x14]、[0x18]和[0x1C]的4个偏移量拆分固件。

固件打包

小米官方在打包固件时用RSA私钥计算出固件的RSA签名,小米路由器下载固件后用RSA公钥来验证RSA签名,有效地防止固件被篡改。

+

固件解包

固件工具mkxqimage完成对固件的解包,在解包前先检查Checksum是否正确,然后利用RSA公钥/usr/share/xiaoqiang/public.pem检查RSA签名,这两个步骤通过后,根据[0x0C]的固件类型,以及[0x10]、[0x14]、[0x18]和[0x1C]的4个偏移量拆分固件。

+

固件更新签名校验

小米路由器进行固件更新时同样会进行签名校验,文件/usr/share/xiaoqiang/public.pem是它的公钥,用来校验签名正确与否。正因为这样,黑客如果想在不拆机的前提下刷入已植入木马的固件,只有两条路可走,一是通过入侵、社工或破解得到对应的私钥,然后对修改后的固件进行签名再刷入;二是通过漏洞,挖掘新的漏洞或者刷入有漏洞的旧版固件,然后再通过漏洞利用得到root shell进而刷入任意固件。一般来讲,第一条路是很难的,而为了堵住第二条路,可以通过限制降级来实现。

+

由此可见,在限制降级的前提下,在固件更新时进行签名校验,能有效地防止路由器被植入木马。

固件格式

路由固件的格式,基本是基于 openwrt 的 trx 这个简单的二进制文件格式

1
2
3
48 44 52 30 63 D4 11 03 FE 3D 1A FD 05 00 02 00
20 00 00 00 20 00 FE 00 00 00 00 00 00 00 00 00
FF 04 00 EA 14 F0 9F E5 14 F0 9F E5 14 F0 9F E5

第1~4字节:ASCII字符串“HDR0”,作为固件的标识;
第5~8字节:4字节整型数0x0311D464,表示固件的大小:51500132字节;
第9~12字节:固件的检查和;
第13~14字节:0x0005,表示固件中包含哪些部分;
第15~16字节:0x0002,表示固件格式版本号;
第17~20字节:0x00000020,表示固件第一部分在整个固件中的偏移量,0.4.85固件的第一部分是brcm4709_nor.bin,也就是Flash中除0xfe0000-0xff0000的board_data外的全镜像;
第21~24字节:0x00FE0020,表示固件第二部分在整个固件中的偏移量,0.4.85固件的第二部分是root.ext4.lzma,也就是硬盘中128M固件的压缩包;
第33字节开始是固件的正式内容开始。

小米开启ssh工具包

使用mkxqimage解包
(现在会提示秘钥不存在)

1
2
error fopen public key
Image verify failed, not formal image

@@ -606,7 +608,7 @@ - 21 + 22 日志 @@ -617,7 +619,7 @@
- 9 + 8 分类
@@ -628,7 +630,7 @@
- 43 + 44 标签
@@ -683,7 +685,7 @@ -
+
@@ -715,7 +717,7 @@ - 64.4k + 67.6k diff --git a/2019/03/23/auto-send-WX/index.html b/2019/03/23/auto-send-WX/index.html index 45187f35..29086f41 100644 --- a/2019/03/23/auto-send-WX/index.html +++ b/2019/03/23/auto-send-WX/index.html @@ -616,7 +616,7 @@ - 21 + 22 日志 @@ -627,7 +627,7 @@
- 9 + 8 分类
@@ -638,7 +638,7 @@
- 43 + 44 标签
@@ -725,7 +725,7 @@ - 64.4k + 67.6k diff --git a/2019/03/25/Samba-CVE/index.html b/2019/03/25/Samba-CVE/index.html index 1c22f8d3..86b6e191 100644 --- a/2019/03/25/Samba-CVE/index.html +++ b/2019/03/25/Samba-CVE/index.html @@ -641,7 +641,7 @@ - 21 + 22 日志 @@ -652,7 +652,7 @@
- 9 + 8 分类
@@ -663,7 +663,7 @@
- 43 + 44 标签
@@ -750,7 +750,7 @@ - 64.4k + 67.6k diff --git a/2019/03/28/逆向工程实验/index.html b/2019/03/28/逆向工程实验/index.html index 68203cc7..2fc0fe58 100644 --- a/2019/03/28/逆向工程实验/index.html +++ b/2019/03/28/逆向工程实验/index.html @@ -744,7 +744,7 @@ - 21 + 22 日志 @@ -755,7 +755,7 @@
- 9 + 8 分类
@@ -766,7 +766,7 @@
- 43 + 44 标签
@@ -853,7 +853,7 @@ - 64.4k + 67.6k diff --git a/2019/04/15/Caving-db-storage/index.html b/2019/04/15/Caving-db-storage/index.html index d27bae10..7558e9a5 100644 --- a/2019/04/15/Caving-db-storage/index.html +++ b/2019/04/15/Caving-db-storage/index.html @@ -665,7 +665,7 @@ - 21 + 22 日志 @@ -676,7 +676,7 @@
- 9 + 8 分类
@@ -687,7 +687,7 @@
- 43 + 44 标签
@@ -774,7 +774,7 @@ - 64.4k + 67.6k diff --git a/2019/04/21/XIAOMI-UPnP/index.html b/2019/04/21/XIAOMI-UPnP/index.html index 01bda33a..03d7ad64 100644 --- a/2019/04/21/XIAOMI-UPnP/index.html +++ b/2019/04/21/XIAOMI-UPnP/index.html @@ -789,7 +789,7 @@ - 21 + 22 日志 @@ -800,7 +800,7 @@
- 9 + 8 分类
@@ -811,7 +811,7 @@
- 43 + 44 标签
@@ -898,7 +898,7 @@ - 64.4k + 67.6k diff --git a/2019/05/13/PE-file/index.html b/2019/05/13/PE-file/index.html index f6c40986..5688fdbd 100644 --- a/2019/05/13/PE-file/index.html +++ b/2019/05/13/PE-file/index.html @@ -708,7 +708,7 @@ - 21 + 22 日志 @@ -719,7 +719,7 @@
- 9 + 8 分类
@@ -730,7 +730,7 @@
- 43 + 44 标签
@@ -817,7 +817,7 @@ - 64.4k + 67.6k diff --git a/2019/05/14/pack-and-unpack/index.html b/2019/05/14/pack-and-unpack/index.html index 6c1e10f9..2415616a 100644 --- a/2019/05/14/pack-and-unpack/index.html +++ b/2019/05/14/pack-and-unpack/index.html @@ -630,7 +630,7 @@ - 21 + 22 日志 @@ -641,7 +641,7 @@
- 9 + 8 分类
@@ -652,7 +652,7 @@
- 43 + 44 标签
@@ -739,7 +739,7 @@ - 64.4k + 67.6k diff --git a/2019/07/01/AFL-first-learn/index.html b/2019/07/01/AFL-first-learn/index.html index db492a9c..71c227f8 100644 --- a/2019/07/01/AFL-first-learn/index.html +++ b/2019/07/01/AFL-first-learn/index.html @@ -469,7 +469,7 @@

0x02 AFL快速入门

1)用make编译AFL。如果构建失败,请参阅docs / INSTALL以获取提示。
2)查找或编写一个相当快速和简单的程序,该程序从文件或标准输入中获取数据,以一种有价值的方式处理它,然后干净地退出。如果测试网络服务,请将其修改为在前台运行并从stdin读取。在对使用校验和的格式进行模糊测试时,也要注释掉校验和验证码。
遇到故障时,程序必须正常崩溃。注意自定义SIGSEGV或SIGABRT处理程序和后台进程。有关检测非崩溃缺陷的提示,请参阅docs/README中的第11节。
3)使用afl-gcc编译要模糊的程序/库。一种常见的方法是:

1
2
$ CC = /path/to/afl-gcc CXX =/path/to/afl-g++ ./configure --disable-shared
$ make clean all

-

如果程序构建失败,请联系 afl-users@googlegroups.com
4)获取一个对程序有意义的小而有效的输入文件。在模糊详细语法(SQL,HTTP等)时,也要创建字典,如dictionaries/README.dictionaries中所述。
5)如果程序从stdin读取,则运行afl-fuzz,如下所示:
./afl-fuzz -i testcase_dir -o findings_dir -- /path/to/tested/program [... program's cmdline ...]
如果程序从文件中获取输入,则可以在程序的命令行中输入@@; AFL会为您放置一个自动生成的文件名。

+

如果程序构建失败,请联系 afl-users@googlegroups.com
4)获取一个对程序有意义的小而有效的输入文件。在模糊详细语法(SQL,HTTP等)时,也要创建字典,如dictionaries/README.dictionaries中所述。
5)如果程序从stdin读取,则运行afl-fuzz,如下所示:
./afl-fuzz -i testcase_dir -o findings_dir -- /path/to/tested/program [... program's cmdline ...]
如果程序从文件中获取输入,则可以在程序的命令行中输入@@; AFL会为您放置一个自动生成的文件名。

一些参考文档

docs/README - AFL的一般介绍,
docs/perf_tips.txt - 关于如何快速模糊的简单提示,
docs/status_screen.txt - UI中显示的花絮的解释,
docs/parallel_fuzzing.txt - 关于在多个核上运行AFL的建议
Generated test cases for common image formats - 生成图像文件测试用例的demo
Technical “whitepaper” for afl-fuzz - 技术白皮书

@@ -486,10 +486,10 @@

0x04 AFL README

-

Written and maintained by Michal Zalewski lcamtuf@google.com

+

Written and maintained by Michal Zalewski lcamtuf@google.com

Copyright 2013, 2014, 2015, 2016 Google Inc. All rights reserved.
Released under terms and conditions of Apache License, Version 2.0.

For new versions and additional information, check out:
http://lcamtuf.coredump.cx/afl/

-

To compare notes with other users or get notified about major new features,
send a mail to afl-users+subscribe@googlegroups.com.

+

To compare notes with other users or get notified about major new features,
send a mail to afl-users+subscribe@googlegroups.com.

See QuickStartGuide.txt if you don’t have time to read this file.

1)具有导向性的模糊测试的挑战

Fuzzing是用于识别真实软件中的安全问题的最强大且经过验证的策略之一;它负责安全关键软件中迄今为止发现的绝大多数远程代码执行和权限提升漏洞。
不幸的是,模糊测试也不够有力。盲目的、随机的变异使得它不太可能在测试代码中达到某些代码路径,从而使一些漏洞超出了这种技术的范围。
已经有许多尝试来解决这个问题。早期方法之一 - 由Tavis Ormandy开创 - 是一种 语义库蒸馏(corpus distillation) 。网上找到的一些大型语料库中往往包含大量的文件,这时就需要对其精简,该方法依赖于覆盖信号从大量高质量的候选文件语料库中选择有趣种子的子集,然后通过传统方式对其进行模糊处理。该方法非常有效,但需要这样的语料库随时可用。正因为如此,代码覆盖率 也只是衡量程序执行状态的一个简单化的度量,这种方式并不适合后续引导fuzzing测试的。
其他更复杂的研究集中在诸如 程序流分析(“concoic execution”),符号执行或静态分析 等技术上。所有这些方法在实验环境中都非常有前景,但在实际应用中往往会遇到可靠性和性能问题 - 部分高价值的程序都有非常复杂的内部状态和执行路径,在这一方面符号执行和concolic技术往往会显得不够健壮(如路径爆炸问题),所以仍然稍逊于传统的fuzzing技术。

@@ -903,7 +903,7 @@ - 21 + 22 日志 @@ -914,7 +914,7 @@
- 9 + 8 分类
@@ -925,7 +925,7 @@
- 43 + 44 标签
@@ -1012,7 +1012,7 @@ - 64.4k + 67.6k diff --git a/2019/07/09/afl-first-try/index.html b/2019/07/09/afl-first-try/index.html index 7cb1de53..93273d72 100644 --- a/2019/07/09/afl-first-try/index.html +++ b/2019/07/09/afl-first-try/index.html @@ -693,7 +693,7 @@ - 21 + 22 日志 @@ -704,7 +704,7 @@
- 9 + 8 分类
@@ -715,7 +715,7 @@
- 43 + 44 标签
@@ -802,7 +802,7 @@ - 64.4k + 67.6k diff --git a/2019/07/10/x86basic/index.html b/2019/07/10/x86basic/index.html index c6fe2a2a..bacd5ac9 100644 --- a/2019/07/10/x86basic/index.html +++ b/2019/07/10/x86basic/index.html @@ -725,7 +725,7 @@ - 21 + 22 日志 @@ -736,7 +736,7 @@
- 9 + 8 分类
@@ -747,7 +747,7 @@
- 43 + 44 标签
@@ -834,7 +834,7 @@ - 64.4k + 67.6k diff --git a/2019/07/16/linux-pwn-32/index.html b/2019/07/16/linux-pwn-32/index.html index fda9dac3..638dc5a4 100644 --- a/2019/07/16/linux-pwn-32/index.html +++ b/2019/07/16/linux-pwn-32/index.html @@ -708,7 +708,7 @@ - 21 + 22 日志 @@ -719,7 +719,7 @@
- 9 + 8 分类
@@ -730,7 +730,7 @@
- 43 + 44 标签
@@ -817,7 +817,7 @@ - 64.4k + 67.6k diff --git a/2019/07/24/web-dvwa/index.html b/2019/07/24/web-dvwa/index.html index b3f41876..e170de3c 100644 --- a/2019/07/24/web-dvwa/index.html +++ b/2019/07/24/web-dvwa/index.html @@ -721,7 +721,7 @@ - 21 + 22 日志 @@ -732,7 +732,7 @@
- 9 + 8 分类
@@ -743,7 +743,7 @@
- 43 + 44 标签
@@ -830,7 +830,7 @@ - 64.4k + 67.6k diff --git a/2019/07/24/获取固件/index.html b/2019/07/24/获取固件/index.html index b9a0b080..b6cf4740 100644 --- a/2019/07/24/获取固件/index.html +++ b/2019/07/24/获取固件/index.html @@ -516,6 +516,10 @@
+ +
@@ -600,7 +604,7 @@ - 21 + 22 日志 @@ -611,7 +615,7 @@
- 9 + 8 分类
@@ -622,7 +626,7 @@
- 43 + 44 标签
@@ -709,7 +713,7 @@ - 64.4k + 67.6k diff --git a/2019/07/25/Debug-a-router-firmware/index.html b/2019/07/25/Debug-a-router-firmware/index.html new file mode 100644 index 00000000..101e2525 --- /dev/null +++ b/2019/07/25/Debug-a-router-firmware/index.html @@ -0,0 +1,1438 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 远程调试小米路由器固件 | 混元霹雳手 + + + + + + + + + + + + + + + + + + +
+
+ + + +
+
+
+
+ + +
+ + + + + + + + +
+ + + +
+ + + + + + + +
+ + + +

远程调试小米路由器固件

+ + + +
+ + + + + +
+ + + + + +

0x00 背景与简介

在分析嵌入式设备的固件时,只采用静态分析方式通常是不够的,你需要实际执行你的分析目标来观察它的行为。在嵌入式Linux设备的世界里,很容易把一个调试器放在目标硬件上进行调试。如果你能在自己的系统上运行二进制文件,而不是拖着硬件做分析, 将会方便很多,这就需要用QEMU进行仿真。
虽然QEMU在模拟核心芯片组包括CPU上都做的很不错,但是QEMU往往不能提供你想运行的二进制程序需要的硬件。最常见问题是在运行系统服务,如Web服务器或UPnP守护进程时,缺乏NVRAM。解决方法是使用nvram-faker库拦截由libnvram.so提供的nvram_get()调用。即使解决了NVRAM问题,该程序还可能会假设某些硬件是存在的,如果硬件不存在,该程序可能无法运行,或者即便它运行了,行为可能也与在其目标硬件上运行时有所不同。针对这种情况下,我认为有三种解决方法:

+
    +
  1. 修补二进制文件。这取决于期望什么硬件,以及它不存在时的行为是什么。
  2. +
  3. 把复杂的依赖于硬件的系统服务拆分成小的二级制文件。如跳过运行Web服务器,仅仅从shell脚本运行cgi二进制文件。因为大多数cgi二进制文件将来自Web服务器的输入作为标准输入和环境变量的组合,并通过标准输出将响应发送到Web服务器。
  4. +
  5. 拿到设备的shell,直接在真机上进行调试,这是最接近真实状况的方法。
  6. +
+
+

REF

综合:
国外大神的博客
通过QEMU和IDAPro远程调试设备固件
MIPS漏洞调试环境安装及栈溢出
环境搭建onCTFWIKI
路由器漏洞训练平台
路由器0day漏洞挖掘实战
逆向常用工具

+

环境搭建:
路由器漏洞挖掘测试环境的搭建之问题总结

+

Linux相关知识
qcow2、raw、vmdk等镜像格式
Linux 引导过程内幕
Linux启动过程

+

调试案例
CVE-2019-10999复现
《家用路由器0day漏洞挖掘》部分案例
TP-LINK WR941N路由器研究

+
+

0x01 基础条件

+
+

0x02 qemu-用户模式

在user mode下使用qemu执行程序有两种情况,一是目标程序为静态链接,那么可以直接使用qemu。另一种是目标程序依赖于动态链接库,这时候就需要我们来指明库的位置,否则目标程序回到系统/lib文件下寻找共享库文件。
《揭秘家用路由器0day》 这本书里面,他给出的方法是:

1
2
$ cp $(which qemu-mipsel) ./
$ sudo chroot . ./qemu-mipsel ./usr/sbin/miniupnpd

+

他把qemu-mipsel复制到固件文件目录下,然后chroot命令改变qemu执行的根目录到当前目录,按理说此时应该可以找到依赖库,但是结果却是chroot: failed to run command ‘./qemu-mipsel’: No such file or directory

+

在网上找到了解决方法:需要安装使用 qemu-mips-static 才可以

1
2
3
$ apt-get install qemu binfmt-support qemu-user-static
$ cp $(which qemu-mipsel-static ) ./
$ sudo chroot . ./qemu-mipsel-static ./usr/sbin/miniupnpd

+

这里还可利用-E用来设置环境变量,LD_PRELOAD "./lib"用来劫持系统调用,另外还有-g开启调试模式

+

除此之外,也在CTF-WIKI上找到了另一种方法:使用 qemu-mips 的 -L 参数指定路由器的根目录

1
$ qemu-mipsel -L . ./usr/sbin/miniupnpd

+

模拟miniupnp

由于没有指定参数,所以这里miniupnpd只把usage和notes打印给我们了:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Usage:
./usr/sbin/miniupnpd [-f config_file] [-i ext_ifname] [-o ext_ip]
[-a listening_ip] [-p port] [-d] [-U] [-S] [-N]
[-u uuid] [-s serial] [-m model_number]
[-t notify_interval] [-P pid_filename]
[-B down up] [-w url] [-r clean_ruleset_interval]
[-A "permission rule"] [-b BOOTID]

Notes:
There can be one or several listening_ips.
Notify interval is in seconds. Default is 30 seconds.
Default pid file is '/var/run/miniupnpd.pid'.
Default config file is '/etc/miniupnpd.conf'.
With -d miniupnpd will run as a standard program.
-S sets "secure" mode : clients can only add mappings to their own ip
-U causes miniupnpd to report system uptime instead of daemon uptime.
-N enables NAT-PMP functionality.
-B sets bitrates reported by daemon in bits per second.
-w sets the presentation url. Default is http address on port 80
-A use following syntax for permission rules :
(allow|deny) (external port range) ip/mask (internal port range)
examples :
"allow 1024-65535 192.168.1.0/24 1024-65535"
"deny 0-65535 0.0.0.0/0 0-65535"
-b sets the value of BOOTID.UPNP.ORG SSDP header
-h prints this help and quits.

+

根据miniupnpd的启动文件/etc/init.d/miniupnpd,小米使用了启动脚本来配置service_start /usr/sbin/miniupnpd -f conffile -d
其配置文件connfile如下所示:

1
2
3
4
5
6
7
8
9
10
11
12
13
ext_ifname=eth0.2
listening_ip=br-lan
port=5351
enable_natpmp=yes
enable_upnp=yes
secure_mode=no
system_uptime=yes
lease_file=/tmp/upnp.leases
bitrate_down=8388608
bitrate_up=4194304
uuid=e1f3a0ec-d9d4-4317-a14b-130cdd18d092
allow 1024-65535 0.0.0.0/0 1024-65535
deny 0-65535 0.0.0.0/0 0-65535

+
    +
  • 可见因路由器的特殊性,具有两张网卡(eth0.2&br-lan),暂时我还没想出应该怎么解决,是否采用qemu虚拟机配置网络可以解决呢?反正我采用下面这种粗暴的方式是不可以的(直接指定配置文件)
    1
    2
    3
    4
    $ sudo qemu-mipsel -L . ./usr/sbin/miniupnpd -f ../../MiniUPnP/miniupnpd.conf -d
    miniupnpd[7687]: system uptime is 5652 seconds
    miniupnpd[7687]: iptc_init() failed : iptables who? (do you need to insmod?)
    miniupnpd[7687]: Failed to init redirection engine. EXITING
    +
  • +
+
+

0x03 qemu-系统模式

系统模式命令格式:$qemu system-mips [option][disk_image]

+

MIPS系统网络配置

下载mips系统内核和虚拟机镜像 https://people.debian.org/~aurel32/qemu/

1
2
3
4
To use this image, you need to install QEMU 1.1.0 (or later). Start QEMU
with the following arguments for a 32-bit machine:
- qemu-system-mipsel -M malta -kernel vmlinux-2.6.32-5-4kc-malta -hda debian_squeeze_mipsel_standard.qcow2 -append "root=/dev/sda1 console=tty0"
- qemu-system-mipsel -M malta -kernel vmlinux-3.2.0-4-4kc-malta -hda debian_wheezy_mipsel_standard.qcow2 -append "root=/dev/sda1 console=tty0"

+

1. 安装依赖文件apt-get install uml-utilities bridge-utils

+

2. 修改主机网络配置

1
2
3
4
5
6
7
8
9
10
auto lo
iface lo inet loopback

auto ens33
iface eth0 inet dhcp

#auto br0
iface br0 inet dhcp
bridge_ports ens33
bridge_maxwait 0

+

3. 修改qemu网络接口启动脚本

1
2
3
4
5
6
7
8
9
$ sudo vim /etc/qemu-ifup  
$ sudo chmod a+x /etc/qemu-ifup
#!/bin/sh
echo "Executing /etc/qemu-ifup"
echo "Bringing $1 for bridged mode..."
sudo /sbin/ifconfig $1 0.0.0.0 promisc up
echo "Adding $1 to br0..."
sudo /sbin/brctl addif br0 $1
sleep 3

+
1
$ sudo /etc/init.d/networking restart
+

4. qemu启动配置

1
2
$ sudo ifdown ens33
$ sudo ifup br0

+

5. 启动mips虚拟机
sudo qemu-system-mipsel -M malta -kernel vmlinux-3.2.0-4-4kc-malta -hda debian_wheezy_mipsel_standard.qcow2 -append "root=/dev/sda1 console=tty0" -net nic,macaddr=00:16:3e:00:00:01 -net tap -nographic

+

我自闭了,ubuntu18根本没法联网,于是我用了ubuntu14.0

+
+

0x04 在mips虚拟机中调试

现在通过上面的配置我得到了这样一台虚拟机,并通过ssh连接上去。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
root@debian-mipsel:/home/user/mi_wifi_r3_112# ifconfig
eth1 Link encap:Ethernet HWaddr 00:16:3e:00:00:01
inet addr:192.168.31.246 Bcast:192.168.31.255 Mask:255.255.255.0
inet6 addr: fe80::216:3eff:fe00:1/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:89377 errors:75 dropped:360 overruns:0 frame:0
TX packets:9114 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:103978997 (99.1 MiB) TX bytes:924287 (902.6 KiB)
Interrupt:10 Base address:0x1020

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)

+

已经把我的小米固件全部上传到这个虚拟机中

1
2
root@debian-mipsel:/home/user/mi_wifi_r3_112# ls
bin data dev etc extdisks lib libnvram-faker.so mnt opt overlay proc qemu-mipsel-static readonly rom root sbin sys tmp userdisk usr var www

+

和用户模式一样,还是使用chroot,因为目标二进制是和固件的库链接的,很可能不能跟Debian的共享库一起工作。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
root@debian-mipsel:/home/user/mi_wifi_r3_112# chroot . ./usr/sbin/miniupnpd
Usage:
./usr/sbin/miniupnpd [-f config_file] [-i ext_ifname] [-o ext_ip]
[-a listening_ip] [-p port] [-d] [-U] [-S] [-N]
[-u uuid] [-s serial] [-m model_number]
[-t notify_interval] [-P pid_filename]
[-B down up] [-w url] [-r clean_ruleset_interval]
[-A "permission rule"] [-b BOOTID]

Notes:
There can be one or several listening_ips.
Notify interval is in seconds. Default is 30 seconds.
Default pid file is '/var/run/miniupnpd.pid'.
Default config file is '/etc/miniupnpd.conf'.
With -d miniupnpd will run as a standard program.
-S sets "secure" mode : clients can only add mappings to their own ip
-U causes miniupnpd to report system uptime instead of daemon uptime.
-N enables NAT-PMP functionality.
-B sets bitrates reported by daemon in bits per second.
-w sets the presentation url. Default is http address on port 80
-A use following syntax for permission rules :
(allow|deny) (external port range) ip/mask (internal port range)
examples :
"allow 1024-65535 192.168.1.0/24 1024-65535"
"deny 0-65535 0.0.0.0/0 0-65535"
-b sets the value of BOOTID.UPNP.ORG SSDP header
-h prints this help and quits.

+

直接运行起来,还是只打印出usage,这里我注意到之前忽视的地方Default config file is '/etc/miniupnpd.conf'.,所以我不再使用-f参数来指定,而是把配置文件放在默认目录下,在小米路由器里,ext_ifname是外部ip,listening_ip是内部ip。但是我这里还没有开启两个,所以都赋值为一张网卡。

1
2
3
4
5
6
7
8
9
10
11
12
13
ext_ifname=eth1
listening_ip=eth1
port=5351
enable_natpmp=yes
enable_upnp=yes
secure_mode=no
system_uptime=yes
lease_file=/tmp/upnp.leases
bitrate_down=8388608
bitrate_up=4194304
uuid=e1f3a0ec-d9d4-4317-a14b-130cdd18d092
allow 1024-65535 0.0.0.0/0 1024-65535
deny 0-65535 0.0.0.0/0 0-65535

+

在这个配置下,运行miniupnp还是被告知daemon(): No such file or directory

1
2
root@debian-mipsel:/home/user/mi_wifi_r3_112# chroot . ./usr/sbin/miniupnpd
root@debian-mipsel:/home/user/mi_wifi_r3_112# daemon(): No such file or directory

+

我起初猜测是因为缺乏NVRAM

+
+

在运行系统服务,如Web服务器或UPnP守护进程时,缺乏NVRAM。非易失性RAM通常是包含配置参数的设备快速存储器的一个分区。当一个守护进程启动时,它通常会尝试查询NVRAM,获取其运行时配置信息。有时一个守护进程会查询NVRAM的几十甚至上百个参数。

+
+

于是我运行二进制程序时,使用LD_PRELOAD对nvram-faker库进行预加载。它会拦截通常由libnvram.so提供的nvram_get()调用。nvram-faker会查询你提供的一个INI风格的配置文件,而不是试图查询NVRAM。
这里有一个链接:https://github.com/zcutlip/nvram-faker

1
2
root@debian-mipsel:/home/user/mi_wifi_r3_112# chroot . /bin/sh -c "LD_PRELOAD=/libnvram-faker.so /usr/sbin/miniupnpd"
root@debian-mipsel:/home/user/mi_wifi_r3_112# daemon(): No such file or directory

+

问题依然存在,daemon是在miniupnpd中常出现的词,猜测,会不会某些函数没有实现?这部分会比较麻烦,需要反汇编。
但是,我们不是可以拿到路由器的shell吗!干嘛还要用qemu模拟再调试,直接上真机!

+
+

0x05 设备上调试程序

+

1、有shell权限
2、有静态编译的gdbserver或者gdb

+
+

只要满足上面两个条件,我们就可以通过在路由器上运行gdbserver_mipsle --attach 0.0.0.0:port PID 以及 在你的电脑上使用 gdb-multiarch 进行调试(先指定架构,然后使用remote功能)轻松地调试设备上地mips程序。

1
2
pwndbg> set architecture mips (但大多数情况下这一步可以省略, 似乎 pwndbg 能自动识别架构)
pwndbg> target remote localhost:1234

+

能根据固件中的bin得知这是一个小端mips指令集的设备,gdbserver也不用自己编译,直接下载编译好的: https://github.com/rapid7/embedded-tools/tree/master/binaries/gdbserver
把gdbserver.mipsbe通过tftp上传到路由器的/tmp目录下,然后找到目标程序PID:

1
2
3
root@XiaoQiang:/# ps |grep miniupnp
12517 root 1772 S grep miniupnp
28284 root 1496 S /usr/sbin/miniupnpd -f /var/etc/miniupnpd.conf

+

gdbserver attach这个进程,就可以通过gdb或者IDA远程调试这个程序

+ + +
+ + + + + + + +
+
+
您的支持将鼓励我继续创作!
+ + +
+ +
+ + + + + +
+ + + +
+ + + +
+ +
+
+ + +
+ + + + + + +
+ +
+ +
+ + + + + +
+ + + + + + + + + +
+
+ +
+ +
+ + +
+ + +
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/about/index.html b/about/index.html index 05f91dca..fb10d723 100644 --- a/about/index.html +++ b/about/index.html @@ -367,7 +367,7 @@ - 21 + 22 日志 @@ -378,7 +378,7 @@
- 9 + 8 分类
@@ -389,7 +389,7 @@
- 43 + 44 标签
@@ -460,7 +460,7 @@ - 64.4k + 67.6k diff --git a/archives/2000/01/index.html b/archives/2000/01/index.html index 0b65d1c9..1aa009c2 100644 --- a/archives/2000/01/index.html +++ b/archives/2000/01/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -400,7 +400,7 @@ - 21 + 22 日志 @@ -411,7 +411,7 @@
- 9 + 8 分类
@@ -422,7 +422,7 @@
- 43 + 44 标签
@@ -493,7 +493,7 @@ - 64.4k + 67.6k diff --git a/archives/2000/index.html b/archives/2000/index.html index ee53952b..b46311e3 100644 --- a/archives/2000/index.html +++ b/archives/2000/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -400,7 +400,7 @@ - 21 + 22 日志 @@ -411,7 +411,7 @@
- 9 + 8 分类
@@ -422,7 +422,7 @@
- 43 + 44 标签
@@ -493,7 +493,7 @@ - 64.4k + 67.6k diff --git a/archives/2018/11/index.html b/archives/2018/11/index.html index 3da6ea9b..a38c8850 100644 --- a/archives/2018/11/index.html +++ b/archives/2018/11/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -400,7 +400,7 @@ - 21 + 22 日志 @@ -411,7 +411,7 @@
- 9 + 8 分类
@@ -422,7 +422,7 @@
- 43 + 44 标签
@@ -493,7 +493,7 @@ - 64.4k + 67.6k diff --git a/archives/2018/12/index.html b/archives/2018/12/index.html index 8c1e999c..86393a0b 100644 --- a/archives/2018/12/index.html +++ b/archives/2018/12/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -470,7 +470,7 @@ - 21 + 22 日志 @@ -481,7 +481,7 @@
- 9 + 8 分类
@@ -492,7 +492,7 @@
- 43 + 44 标签
@@ -563,7 +563,7 @@ - 64.4k + 67.6k diff --git a/archives/2018/index.html b/archives/2018/index.html index 1917e117..fd9eb793 100644 --- a/archives/2018/index.html +++ b/archives/2018/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -505,7 +505,7 @@ - 21 + 22 日志 @@ -516,7 +516,7 @@
- 9 + 8 分类
@@ -527,7 +527,7 @@
- 43 + 44 标签
@@ -598,7 +598,7 @@ - 64.4k + 67.6k diff --git a/archives/2019/01/index.html b/archives/2019/01/index.html index 41df3db9..280c8b55 100644 --- a/archives/2019/01/index.html +++ b/archives/2019/01/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -400,7 +400,7 @@ - 21 + 22 日志 @@ -411,7 +411,7 @@
- 9 + 8 分类
@@ -422,7 +422,7 @@
- 43 + 44 标签
@@ -493,7 +493,7 @@ - 64.4k + 67.6k diff --git a/archives/2019/02/index.html b/archives/2019/02/index.html index 33e540a3..e2ede291 100644 --- a/archives/2019/02/index.html +++ b/archives/2019/02/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -400,7 +400,7 @@ - 21 + 22 日志 @@ -411,7 +411,7 @@
- 9 + 8 分类
@@ -422,7 +422,7 @@
- 43 + 44 标签
@@ -493,7 +493,7 @@ - 64.4k + 67.6k diff --git a/archives/2019/03/index.html b/archives/2019/03/index.html index 0d1ead74..3eeb58aa 100644 --- a/archives/2019/03/index.html +++ b/archives/2019/03/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -505,7 +505,7 @@ - 21 + 22 日志 @@ -516,7 +516,7 @@
- 9 + 8 分类
@@ -527,7 +527,7 @@
- 43 + 44 标签
@@ -598,7 +598,7 @@ - 64.4k + 67.6k diff --git a/archives/2019/04/index.html b/archives/2019/04/index.html index 41c408da..9a1ba776 100644 --- a/archives/2019/04/index.html +++ b/archives/2019/04/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -435,7 +435,7 @@ - 21 + 22 日志 @@ -446,7 +446,7 @@
- 9 + 8 分类
@@ -457,7 +457,7 @@
- 43 + 44 标签
@@ -528,7 +528,7 @@ - 64.4k + 67.6k diff --git a/archives/2019/05/index.html b/archives/2019/05/index.html index 005a5918..91eae4d2 100644 --- a/archives/2019/05/index.html +++ b/archives/2019/05/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -435,7 +435,7 @@ - 21 + 22 日志 @@ -446,7 +446,7 @@
- 9 + 8 分类
@@ -457,7 +457,7 @@
- 43 + 44 标签
@@ -528,7 +528,7 @@ - 64.4k + 67.6k diff --git a/archives/2019/07/index.html b/archives/2019/07/index.html index f175a53b..f2602164 100644 --- a/archives/2019/07/index.html +++ b/archives/2019/07/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -321,6 +321,41 @@ +
+
+ +

+ + + +

+ + + +
+
+ + + + + + + + + + + + + +
@@ -575,7 +610,7 @@ - 21 + 22 日志 @@ -586,7 +621,7 @@ @@ -597,7 +632,7 @@ @@ -668,7 +703,7 @@ - 64.4k + 67.6k diff --git a/archives/2019/index.html b/archives/2019/index.html index 5adc4cf4..734fb46e 100644 --- a/archives/2019/index.html +++ b/archives/2019/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -321,6 +321,41 @@ + + + + + + + + + + + + + + +
@@ -627,41 +662,6 @@ - - - - - - - - - - - - - - - @@ -719,7 +719,7 @@ - 21 + 22 日志 @@ -730,7 +730,7 @@ @@ -741,7 +741,7 @@ @@ -812,7 +812,7 @@ - 64.4k + 67.6k diff --git a/archives/2019/page/2/index.html b/archives/2019/page/2/index.html index c1a67a4f..f4ff035d 100644 --- a/archives/2019/page/2/index.html +++ b/archives/2019/page/2/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -321,6 +321,41 @@ + + + + + + + + + + + + + + +
@@ -579,7 +614,7 @@ - 21 + 22 日志 @@ -590,7 +625,7 @@ @@ -601,7 +636,7 @@ @@ -672,7 +707,7 @@ - 64.4k + 67.6k diff --git a/archives/index.html b/archives/index.html index b6fa8613..66006fa3 100644 --- a/archives/index.html +++ b/archives/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -321,6 +321,41 @@ + + + + + + + + + + + + + + +
@@ -627,41 +662,6 @@ - - - - - - - - - - - - - - - @@ -719,7 +719,7 @@ - 21 + 22 日志 @@ -730,7 +730,7 @@ @@ -741,7 +741,7 @@ @@ -812,7 +812,7 @@ - 64.4k + 67.6k diff --git a/archives/page/2/index.html b/archives/page/2/index.html index 879c2195..d11466dc 100644 --- a/archives/page/2/index.html +++ b/archives/page/2/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -321,6 +321,41 @@ + + + + + + + + + + + + + + +
@@ -632,41 +667,6 @@ - - - - - - - - - - - - - - - @@ -724,7 +724,7 @@ - 21 + 22 日志 @@ -735,7 +735,7 @@ @@ -746,7 +746,7 @@ @@ -817,7 +817,7 @@ - 64.4k + 67.6k diff --git a/archives/page/3/index.html b/archives/page/3/index.html index 4971d009..61b1d7a0 100644 --- a/archives/page/3/index.html +++ b/archives/page/3/index.html @@ -302,7 +302,7 @@ - 嗯..! 目前共计 21 篇日志。 继续努力。 + 嗯..! 目前共计 22 篇日志。 继续努力。 @@ -313,6 +313,46 @@ +
+

2018

+
+ + + + + + + + + + + + + + + + +

2000

@@ -404,7 +444,7 @@ - 21 + 22 日志 @@ -415,7 +455,7 @@ @@ -426,7 +466,7 @@ @@ -497,7 +537,7 @@ - 64.4k + 67.6k diff --git a/baidu_urls.txt b/baidu_urls.txt index 33ba5eaa..334fb435 100644 --- a/baidu_urls.txt +++ b/baidu_urls.txt @@ -1,5 +1,5 @@ +https://cool-y.github.io/2019/07/25/Debug-a-router-firmware/ https://cool-y.github.io/2019/07/24/获取固件/ https://cool-y.github.io/2019/07/24/web-dvwa/ https://cool-y.github.io/2019/07/16/linux-pwn-32/ -https://cool-y.github.io/2019/07/10/x86basic/ -https://cool-y.github.io/2019/07/09/afl-first-try/ \ No newline at end of file +https://cool-y.github.io/2019/07/10/x86basic/ \ No newline at end of file diff --git a/baidusitemap.xml b/baidusitemap.xml index 1de27de0..125535bd 100644 --- a/baidusitemap.xml +++ b/baidusitemap.xml @@ -1,6 +1,12 @@ + https://cool-y.github.io/2019/07/25/Debug-a-router-firmware/ + 2019-07-25 + + https://cool-y.github.io/2019/03/16/%E5%B0%8F%E7%B1%B3%E5%9B%BA%E4%BB%B6%E5%B7%A5%E5%85%B7mkxqimage/ + 2019-07-24 + https://cool-y.github.io/2019/07/24/%E8%8E%B7%E5%8F%96%E5%9B%BA%E4%BB%B6/ 2019-07-24 @@ -36,32 +42,29 @@ https://cool-y.github.io/2019/04/15/Caving-db-storage/ 2019-04-15 - - https://cool-y.github.io/2019/03/16/%E5%B0%8F%E7%B1%B3%E5%9B%BA%E4%BB%B6%E5%B7%A5%E5%85%B7mkxqimage/ - 2019-04-15 https://cool-y.github.io/2018/12/23/%E5%9F%BA%E4%BA%8E%E8%A7%84%E5%88%99%E5%BC%95%E6%93%8E%E5%8F%91%E7%8E%B0IOT%E8%AE%BE%E5%A4%87/ 2019-04-15 - - https://cool-y.github.io/2019/01/16/wifi%E5%8D%8A%E5%8F%8C%E5%B7%A5%E4%BE%A7%E4%BF%A1%E9%81%93%E6%94%BB%E5%87%BB%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/ - 2019-04-15 - - https://cool-y.github.io/2019/02/22/qq%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E5%8A%A0%E5%AF%86%E8%A7%A3%E5%AF%86/ - 2019-04-15 https://cool-y.github.io/2018/12/15/miio-control/ 2019-04-15 - https://cool-y.github.io/2019/03/23/auto-send-WX/ + https://cool-y.github.io/2019/02/22/qq%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E5%8A%A0%E5%AF%86%E8%A7%A3%E5%AF%86/ + 2019-04-15 + + https://cool-y.github.io/2019/01/16/wifi%E5%8D%8A%E5%8F%8C%E5%B7%A5%E4%BE%A7%E4%BF%A1%E9%81%93%E6%94%BB%E5%87%BB%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/ 2019-04-15 https://cool-y.github.io/2000/01/01/hello-world/ 2019-04-15 - https://cool-y.github.io/2019/03/25/Samba-CVE/ + https://cool-y.github.io/2019/03/23/auto-send-WX/ 2019-04-15 https://cool-y.github.io/2018/11/16/BIBA%E8%AE%BF%E9%97%AE%E6%8E%A7%E5%88%B6%E6%A8%A1%E5%9E%8B%E5%AE%9E%E7%8E%B0(python)/ 2019-04-15 + + https://cool-y.github.io/2019/03/25/Samba-CVE/ + 2019-04-15 diff --git a/bookmarks/index.html b/bookmarks/index.html index 8d6ff419..b2511abc 100644 --- a/bookmarks/index.html +++ b/bookmarks/index.html @@ -403,7 +403,7 @@ - 21 + 22 日志 @@ -414,7 +414,7 @@ @@ -425,7 +425,7 @@ @@ -512,7 +512,7 @@ - 64.4k + 67.6k diff --git a/categories/IOT/index.html b/categories/IOT/index.html index 111cbba6..db7d2d8f 100644 --- a/categories/IOT/index.html +++ b/categories/IOT/index.html @@ -303,6 +303,32 @@ + + + + + +
@@ -485,7 +511,7 @@ - 21 + 22 日志 @@ -496,7 +522,7 @@ @@ -507,7 +533,7 @@ @@ -578,7 +604,7 @@ - 64.4k + 67.6k diff --git a/categories/Pwn二进制漏洞/index.html b/categories/Pwn二进制漏洞/index.html index b207dde3..06a364b0 100644 --- a/categories/Pwn二进制漏洞/index.html +++ b/categories/Pwn二进制漏洞/index.html @@ -407,7 +407,7 @@ - 21 + 22 日志 @@ -418,7 +418,7 @@ @@ -429,7 +429,7 @@ @@ -500,7 +500,7 @@ - 64.4k + 67.6k diff --git a/categories/index.html b/categories/index.html index 24307690..c6169444 100644 --- a/categories/index.html +++ b/categories/index.html @@ -311,10 +311,10 @@ @@ -372,7 +372,7 @@ - 21 + 22 日志 @@ -383,7 +383,7 @@ @@ -394,7 +394,7 @@ @@ -465,7 +465,7 @@ - 64.4k + 67.6k diff --git a/categories/web/index.html b/categories/web/index.html index 701afe92..4b8cb083 100644 --- a/categories/web/index.html +++ b/categories/web/index.html @@ -381,7 +381,7 @@ - 21 + 22 日志 @@ -392,7 +392,7 @@ @@ -403,7 +403,7 @@ @@ -474,7 +474,7 @@ - 64.4k + 67.6k diff --git a/categories/二进制/index.html b/categories/二进制/index.html index 0945c7f6..f1b4e6dc 100644 --- a/categories/二进制/index.html +++ b/categories/二进制/index.html @@ -485,7 +485,7 @@ - 21 + 22 日志 @@ -496,7 +496,7 @@ @@ -507,7 +507,7 @@ @@ -578,7 +578,7 @@ - 64.4k + 67.6k diff --git a/categories/加密解密/index.html b/categories/加密解密/index.html index 457dd741..b7adcbed 100644 --- a/categories/加密解密/index.html +++ b/categories/加密解密/index.html @@ -381,7 +381,7 @@ - 21 + 22 日志 @@ -392,7 +392,7 @@ @@ -403,7 +403,7 @@ @@ -474,7 +474,7 @@ - 64.4k + 67.6k diff --git a/categories/杂七杂八/index.html b/categories/杂七杂八/index.html index 2898f808..afe89093 100644 --- a/categories/杂七杂八/index.html +++ b/categories/杂七杂八/index.html @@ -381,7 +381,7 @@ - 21 + 22 日志 @@ -392,7 +392,7 @@ @@ -403,7 +403,7 @@ @@ -474,7 +474,7 @@ - 64.4k + 67.6k diff --git a/categories/理论学习/index.html b/categories/理论学习/index.html index 298c3fa9..fc0d1c08 100644 --- a/categories/理论学习/index.html +++ b/categories/理论学习/index.html @@ -381,7 +381,7 @@ - 21 + 22 日志 @@ -392,7 +392,7 @@ @@ -403,7 +403,7 @@ @@ -474,7 +474,7 @@ - 64.4k + 67.6k diff --git a/categories/顶会论文/index.html b/categories/顶会论文/index.html index 5cbc48c7..1cb8b09e 100644 --- a/categories/顶会论文/index.html +++ b/categories/顶会论文/index.html @@ -433,7 +433,7 @@ - 21 + 22 日志 @@ -444,7 +444,7 @@ @@ -455,7 +455,7 @@ @@ -526,7 +526,7 @@ - 64.4k + 67.6k diff --git a/css/main.css b/css/main.css index 98f1b395..afbfd769 100644 --- a/css/main.css +++ b/css/main.css @@ -1943,7 +1943,7 @@ pre .javascript .function { width: 4px; height: 4px; border-radius: 50%; - background: #03ffb5; + background: #94e5ff; } .links-of-blogroll { font-size: 13px; diff --git a/index.html b/index.html index c21603d1..b9c70633 100644 --- a/index.html +++ b/index.html @@ -299,6 +299,192 @@ +
+ + + +
+ + + + + + + +
+ + + +

+ +

+ + + +
+ + + + + +
+ + + + + + + + 0x00 背景与简介在分析嵌入式设备的固件时,只采用静态分析方式通常是不够的,你需要实际执行你的分析目标来观察它的行为。在嵌入式Linux设备的世界里,很容易把一个调试器放在目标硬件上进行调试。如果你能在自己的系统上运行二进制文件,而不是拖着硬件做分析, 将会方便很多,这就需要用QEMU进行仿真。虽 + ... + +
+ + 阅读全文 » + +
+ + + +
+ + + + + + + + + + +
+ + + + + + + + +
+ +
+
+ + + +
+ + + + + + + + + + +
@@ -1942,196 +2128,6 @@ MiniUPnP项目提供了支持UPnP IGD(互联网网关设备)规范的软件。 -
- - - - - - - - -
- -
- - - - -
- - - - - - - - - - - -
- - - -
- - - - - - - -
- - - -

- -

- - - -
- - - - - -
- - - - - - - - Carving Database Storage to Detect and Trace Security Breaches -复原数据库存储以检测和跟踪安全漏洞原文下载 - -MotivationDBMS(数据库管理系统) -通常用于存储和处理敏感数据,因此,投入了大量精力使用访问控制策略来保护DBMS。 - ... - -
- - 阅读全文 » - -
- - - -
- - - - - - - - - -
@@ -2215,7 +2211,7 @@ MotivationDBMS(数据库管理系统) @@ -2226,7 +2222,7 @@ MotivationDBMS(数据库管理系统) @@ -2297,7 +2293,7 @@ MotivationDBMS(数据库管理系统) - 64.4k + 67.6k diff --git a/page/2/index.html b/page/2/index.html index 1c4a779a..37094765 100644 --- a/page/2/index.html +++ b/page/2/index.html @@ -299,6 +299,196 @@ +
+ + + +
+ + + + + + + +
+ + + +

+ +

+ + + +
+ + + + + +
+ + + + + + + + Carving Database Storage to Detect and Trace Security Breaches +复原数据库存储以检测和跟踪安全漏洞原文下载 + +MotivationDBMS(数据库管理系统) +通常用于存储和处理敏感数据,因此,投入了大量精力使用访问控制策略来保护DBMS。 + ... + +
+ + 阅读全文 » + +
+ + + +
+ + + + + + + + + + +
+ + + + + + + + +
+ +
+
+ + + +
+ + + + + + + + + + +
@@ -995,7 +1185,7 @@ WinDbg - 690 字 + 926 字 @@ -1009,7 +1199,7 @@ WinDbg - 2 分钟 + 3 分钟 @@ -1992,200 +2182,6 @@ ettercap嗅探智能设备和网关之间的流量sudo ettercap -i ens33 -T -q -
- - - - - - - - -
- -
- - - - -
- - - - - - - - - - - -
- - - -
- - - - - - - -
- - - -

- -

- - - -
- - - - - -
- - - - - - - - 基于python语言的BIBA模型图形界面实现实验目的: -查阅资料,了解biba安全模型的相关知识 -通过编程实现基于biba模型的完整性访问控制,进一步掌握biba模型的规则 -使用python语言实现,熟练pyqt的图形界面设计方法 - - -实验环境: -操作系统:Windows10 -工具版本:pytho - ... - -
- - 阅读全文 » - -
- - - -
- - - - - - - - - -
@@ -2258,7 +2254,7 @@ ettercap嗅探智能设备和网关之间的流量sudo ettercap -i ens33 -T -q - 21 + 22 日志
@@ -2269,7 +2265,7 @@ ettercap嗅探智能设备和网关之间的流量sudo ettercap -i ens33 -T -q @@ -2280,7 +2276,7 @@ ettercap嗅探智能设备和网关之间的流量sudo ettercap -i ens33 -T -q @@ -2351,7 +2347,7 @@ ettercap嗅探智能设备和网关之间的流量sudo ettercap -i ens33 -T -q - 64.4k + 67.6k diff --git a/page/3/index.html b/page/3/index.html index 3332660c..543afc2c 100644 --- a/page/3/index.html +++ b/page/3/index.html @@ -299,6 +299,200 @@ +
+ + + +
+ + + + + + + +
+ + + +

+ +

+ + + +
+ + + + + +
+ + + + + + + + 基于python语言的BIBA模型图形界面实现实验目的: +查阅资料,了解biba安全模型的相关知识 +通过编程实现基于biba模型的完整性访问控制,进一步掌握biba模型的规则 +使用python语言实现,熟练pyqt的图形界面设计方法 + + +实验环境: +操作系统:Windows10 +工具版本:pytho + ... + +
+ + 阅读全文 » + +
+ + + +
+ + + + + + + + + + +
+ + + + + + + + +
+ +
+
+ + + +
+ + + + + + + + + + +
@@ -508,7 +702,7 @@ - 21 + 22 日志 @@ -519,7 +713,7 @@ @@ -530,7 +724,7 @@ @@ -601,7 +795,7 @@ - 64.4k + 67.6k diff --git a/search.xml b/search.xml index ba6683da..43263073 100644 --- a/search.xml +++ b/search.xml @@ -1,5 +1,18 @@ + + <![CDATA[远程调试小米路由器固件]]> + %2F2019%2F07%2F25%2FDebug-a-router-firmware%2F + + + IOT + + + 小米 + 路由器 + 调试 + + <![CDATA[获取固件的几种方法]]> %2F2019%2F07%2F24%2F%E8%8E%B7%E5%8F%96%E5%9B%BA%E4%BB%B6%2F @@ -65,7 +78,7 @@ <![CDATA[模糊测试与AFL]]> %2F2019%2F07%2F01%2FAFL-first-learn%2F - + 二进制 @@ -157,7 +170,7 @@ <![CDATA[小米固件工具mkxqimage]]> %2F2019%2F03%2F16%2F%E5%B0%8F%E7%B1%B3%E5%9B%BA%E4%BB%B6%E5%B7%A5%E5%85%B7mkxqimage%2F - + IOT diff --git a/sitemap.xml b/sitemap.xml index 046e3d41..ab8d503f 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1,6 +1,20 @@ + + https://cool-y.github.io/2019/07/25/Debug-a-router-firmware/ + + 2019-07-25T14:20:41.095Z + + + + + https://cool-y.github.io/2019/03/16/%E5%B0%8F%E7%B1%B3%E5%9B%BA%E4%BB%B6%E5%B7%A5%E5%85%B7mkxqimage/ + + 2019-07-24T06:32:11.089Z + + + https://cool-y.github.io/2019/07/24/%E8%8E%B7%E5%8F%96%E5%9B%BA%E4%BB%B6/ @@ -120,20 +134,6 @@ - - https://cool-y.github.io/about/index.html - - 2019-04-15T07:35:38.083Z - - - - - https://cool-y.github.io/2019/03/16/%E5%B0%8F%E7%B1%B3%E5%9B%BA%E4%BB%B6%E5%B7%A5%E5%85%B7mkxqimage/ - - 2019-04-15T07:35:38.083Z - - - https://cool-y.github.io/2018/12/23/%E5%9F%BA%E4%BA%8E%E8%A7%84%E5%88%99%E5%BC%95%E6%93%8E%E5%8F%91%E7%8E%B0IOT%E8%AE%BE%E5%A4%87/ @@ -142,7 +142,14 @@ - https://cool-y.github.io/2019/01/16/wifi%E5%8D%8A%E5%8F%8C%E5%B7%A5%E4%BE%A7%E4%BF%A1%E9%81%93%E6%94%BB%E5%87%BB%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/ + https://cool-y.github.io/about/index.html + + 2019-04-15T07:35:38.083Z + + + + + https://cool-y.github.io/2018/12/15/miio-control/ 2019-04-15T07:35:38.082Z @@ -156,19 +163,12 @@ - https://cool-y.github.io/2018/12/15/miio-control/ + https://cool-y.github.io/2019/01/16/wifi%E5%8D%8A%E5%8F%8C%E5%B7%A5%E4%BE%A7%E4%BF%A1%E9%81%93%E6%94%BB%E5%87%BB%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/ 2019-04-15T07:35:38.082Z - - https://cool-y.github.io/2019/03/23/auto-send-WX/ - - 2019-04-15T07:35:38.081Z - - - https://cool-y.github.io/2000/01/01/hello-world/ @@ -177,9 +177,9 @@ - https://cool-y.github.io/2019/03/25/Samba-CVE/ + https://cool-y.github.io/2019/03/23/auto-send-WX/ - 2019-04-15T07:35:38.080Z + 2019-04-15T07:35:38.081Z @@ -190,4 +190,11 @@ + + https://cool-y.github.io/2019/03/25/Samba-CVE/ + + 2019-04-15T07:35:38.080Z + + + diff --git a/tags/AFL/index.html b/tags/AFL/index.html index bd94f328..7ae57518 100644 --- a/tags/AFL/index.html +++ b/tags/AFL/index.html @@ -406,7 +406,7 @@ - 21 + 22 日志 @@ -417,7 +417,7 @@ @@ -428,7 +428,7 @@ @@ -499,7 +499,7 @@ - 64.4k + 67.6k diff --git a/tags/CVE/index.html b/tags/CVE/index.html index a8f14a65..3fe2ad9d 100644 --- a/tags/CVE/index.html +++ b/tags/CVE/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/IoT/index.html b/tags/IoT/index.html index 9ff24ab0..dd0c4185 100644 --- a/tags/IoT/index.html +++ b/tags/IoT/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/MiniUPnP/index.html b/tags/MiniUPnP/index.html index 4f2f2128..9e7c71c5 100644 --- a/tags/MiniUPnP/index.html +++ b/tags/MiniUPnP/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/PE/index.html b/tags/PE/index.html index fac645cb..2afbf36b 100644 --- a/tags/PE/index.html +++ b/tags/PE/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/QQ/index.html b/tags/QQ/index.html index c0d20691..bf5f6097 100644 --- a/tags/QQ/index.html +++ b/tags/QQ/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/SSH/index.html b/tags/SSH/index.html index 25a7a181..b9e2c4fd 100644 --- a/tags/SSH/index.html +++ b/tags/SSH/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/Samba/index.html b/tags/Samba/index.html index c7406ce9..871db4c9 100644 --- a/tags/Samba/index.html +++ b/tags/Samba/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/TCPDUMP/index.html b/tags/TCPDUMP/index.html index e5768954..299f5251 100644 --- a/tags/TCPDUMP/index.html +++ b/tags/TCPDUMP/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/USENIX/index.html b/tags/USENIX/index.html index b2a317d3..61f3d21b 100644 --- a/tags/USENIX/index.html +++ b/tags/USENIX/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/Windows/index.html b/tags/Windows/index.html index 12f71fed..b1f0b859 100644 --- a/tags/Windows/index.html +++ b/tags/Windows/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/ctf/index.html b/tags/ctf/index.html index 1c5ce10f..d1f57b55 100644 --- a/tags/ctf/index.html +++ b/tags/ctf/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/index.html b/tags/index.html index 4ca15281..c486acd6 100644 --- a/tags/index.html +++ b/tags/index.html @@ -311,10 +311,10 @@ @@ -372,7 +372,7 @@ - 21 + 22 日志 @@ -383,7 +383,7 @@ @@ -394,7 +394,7 @@ @@ -465,7 +465,7 @@ - 64.4k + 67.6k diff --git a/tags/itchat/index.html b/tags/itchat/index.html index 04451efd..86d4a324 100644 --- a/tags/itchat/index.html +++ b/tags/itchat/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/linux/index.html b/tags/linux/index.html index 8e3318ff..b5e93d5a 100644 --- a/tags/linux/index.html +++ b/tags/linux/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/miio/index.html b/tags/miio/index.html index 83a0f0fb..1688612c 100644 --- a/tags/miio/index.html +++ b/tags/miio/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/pwn/index.html b/tags/pwn/index.html index b74bc99a..5552b81b 100644 --- a/tags/pwn/index.html +++ b/tags/pwn/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/python/index.html b/tags/python/index.html index 69b0beff..5865e566 100644 --- a/tags/python/index.html +++ b/tags/python/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/web/index.html b/tags/web/index.html index 97f4235a..58557b22 100644 --- a/tags/web/index.html +++ b/tags/web/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/wifi/index.html b/tags/wifi/index.html index abd65d36..c39d3026 100644 --- a/tags/wifi/index.html +++ b/tags/wifi/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/中间人/index.html b/tags/中间人/index.html index c702fd3d..6e23b6be 100644 --- a/tags/中间人/index.html +++ b/tags/中间人/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/二进制/index.html b/tags/二进制/index.html index 92ad0cfe..576dc91f 100644 --- a/tags/二进制/index.html +++ b/tags/二进制/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/侧信道攻击/index.html b/tags/侧信道攻击/index.html index 166c48b4..bca3cefe 100644 --- a/tags/侧信道攻击/index.html +++ b/tags/侧信道攻击/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/取证/index.html b/tags/取证/index.html index 9ccaaa91..9884fb97 100644 --- a/tags/取证/index.html +++ b/tags/取证/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/复原文件/index.html b/tags/复原文件/index.html index 29436a16..19c1b74c 100644 --- a/tags/复原文件/index.html +++ b/tags/复原文件/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/密码/index.html b/tags/密码/index.html index 07b9193b..7047b946 100644 --- a/tags/密码/index.html +++ b/tags/密码/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/小米/index.html b/tags/小米/index.html index 9290e0c8..0087f9f8 100644 --- a/tags/小米/index.html +++ b/tags/小米/index.html @@ -303,6 +303,32 @@ + + + + + +
@@ -432,7 +458,7 @@ - 21 + 22 日志 @@ -443,7 +469,7 @@ @@ -454,7 +480,7 @@ @@ -525,7 +551,7 @@ - 64.4k + 67.6k diff --git a/tags/微信/index.html b/tags/微信/index.html index b68da571..d59d1818 100644 --- a/tags/微信/index.html +++ b/tags/微信/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/拒绝服务攻击/index.html b/tags/拒绝服务攻击/index.html index 0b705124..28d18bd6 100644 --- a/tags/拒绝服务攻击/index.html +++ b/tags/拒绝服务攻击/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/数据库/index.html b/tags/数据库/index.html index cc7421c2..e258e7c8 100644 --- a/tags/数据库/index.html +++ b/tags/数据库/index.html @@ -406,7 +406,7 @@ - 21 + 22 日志 @@ -417,7 +417,7 @@ @@ -428,7 +428,7 @@ @@ -499,7 +499,7 @@ - 64.4k + 67.6k diff --git a/tags/数据挖掘/index.html b/tags/数据挖掘/index.html index d807bbe4..b1fc6143 100644 --- a/tags/数据挖掘/index.html +++ b/tags/数据挖掘/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/文件格式/index.html b/tags/文件格式/index.html index 5dad886d..b3d76b0c 100644 --- a/tags/文件格式/index.html +++ b/tags/文件格式/index.html @@ -406,7 +406,7 @@ - 21 + 22 日志 @@ -417,7 +417,7 @@ @@ -428,7 +428,7 @@ @@ -499,7 +499,7 @@ - 64.4k + 67.6k diff --git a/tags/栈溢出/index.html b/tags/栈溢出/index.html index 14aa6431..b16babe2 100644 --- a/tags/栈溢出/index.html +++ b/tags/栈溢出/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/模型实现/index.html b/tags/模型实现/index.html index 99b5e5c6..5d94740f 100644 --- a/tags/模型实现/index.html +++ b/tags/模型实现/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/模糊测试/index.html b/tags/模糊测试/index.html index 2c0549a7..90bfb227 100644 --- a/tags/模糊测试/index.html +++ b/tags/模糊测试/index.html @@ -406,7 +406,7 @@ - 21 + 22 日志 @@ -417,7 +417,7 @@ @@ -428,7 +428,7 @@ @@ -499,7 +499,7 @@ - 64.4k + 67.6k diff --git a/tags/漏洞/index.html b/tags/漏洞/index.html index 6ca75026..be50b1b9 100644 --- a/tags/漏洞/index.html +++ b/tags/漏洞/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/破解/index.html b/tags/破解/index.html index 250bb74c..33e77e60 100644 --- a/tags/破解/index.html +++ b/tags/破解/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/硬件层/index.html b/tags/硬件层/index.html index 00ea8cc4..c84871ea 100644 --- a/tags/硬件层/index.html +++ b/tags/硬件层/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/自然语言处理/index.html b/tags/自然语言处理/index.html index 726d4625..df2d1c45 100644 --- a/tags/自然语言处理/index.html +++ b/tags/自然语言处理/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/访问控制/index.html b/tags/访问控制/index.html index cbd6a58b..e0d5710f 100644 --- a/tags/访问控制/index.html +++ b/tags/访问控制/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/调试/index.html b/tags/调试/index.html new file mode 100644 index 00000000..fe8bd9c9 --- /dev/null +++ b/tags/调试/index.html @@ -0,0 +1,1128 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 标签: 调试 | 混元霹雳手 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tags/路由器/index.html b/tags/路由器/index.html index 6fde1edc..46cf0c7c 100644 --- a/tags/路由器/index.html +++ b/tags/路由器/index.html @@ -303,6 +303,32 @@ + + + + + +
@@ -380,7 +406,7 @@ - 21 + 22 日志 @@ -391,7 +417,7 @@ @@ -402,7 +428,7 @@ @@ -473,7 +499,7 @@ - 64.4k + 67.6k diff --git a/tags/远程执行/index.html b/tags/远程执行/index.html index b0341bef..f96dc533 100644 --- a/tags/远程执行/index.html +++ b/tags/远程执行/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/逆向/index.html b/tags/逆向/index.html index 225b1e00..b95eeb2c 100644 --- a/tags/逆向/index.html +++ b/tags/逆向/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k diff --git a/tags/重放攻击/index.html b/tags/重放攻击/index.html index c3c9c52b..8c8897c4 100644 --- a/tags/重放攻击/index.html +++ b/tags/重放攻击/index.html @@ -380,7 +380,7 @@ - 21 + 22 日志 @@ -391,7 +391,7 @@ @@ -402,7 +402,7 @@ @@ -473,7 +473,7 @@ - 64.4k + 67.6k