自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 strace神器(跟踪系统调用)

简介:strace是一个可用于诊断、调试和教学的Linux用户空间跟踪器。我们用它来监控用户空间进程和内核的交互,比如系统调用、信号传递、进程状态变更等。编译安装:下载低版本4.20版本进行分析,高版本的strace,make的时候报错,直接下载低版本进行分析就可以了。1. ./configure2. make分析:init主要是初始化的工作,ATTACH等。init–>startup_attach–>attach_tcb–>ptrace_attach_or_s

2022-04-23 20:44:03 577

原创 Ptrace调试ARM架构多线程

百度:ptrace()系统调用提供了一种方法可以使得追踪者(tracer)来对被追踪者(tracee)进行观察与控制。具体表现为可以检查tracee中内存以及寄存器的值。ptrace首要地被用于实现断点debug与系统调用追踪。首先,tracee process必须要被tracer attach上(也就是我们启动gdb后的 attach pid),需要注意的是,attach和后续的命令是针对每个线程来说的。如果是一个多线程的程序,每个线程都要被单独的attach才行。这里主要强调了,tracee(

2022-04-23 17:48:22 1569 1

原创 Rootkit---HOOK内核驱动

当插入一个内核驱动时,一般会使用工具insmod,该工具实际上调用了系统调用init_module,在该系统调用函数中,首先调用 load_module,把用户空间传入的整个内核模块文件创建成一个内核模块,返回一个struct module结构体。内核中便以这个结构体代表这个内核模块。init_module系统调用定义,可以看到主要是调用了load_module。在load_module中,主要prepare_coming_module,准备将内核模块进行加载。prepare_coming_mo

2022-04-16 16:49:39 1250

原创 Rootkit---进程隐藏

进程隐藏

2022-04-16 15:09:33 4983 1

原创 Rootkit---获取sys_call_table

内核版本不一致导致获取sys_call_table的方式都不一样,本章总结了三种方式获取sys_call_table。

2022-04-11 17:54:20 516

原创 IL2CPP框架某手游逆向分析

很久没发文章了,这段时间学习了不少Android新知识,发出来学习学习,顺便总结一下。以下内容仅供学习。可以看出该手游是IL2CPP框架的游戏,那么在apk中肯定还有一个global-metadata.dat文件(除非加密)。将global-metadata.dat和libil2cpp.so文件拷贝到同一个文件夹下。使用Il2CppDumper将global-metadata.dat和libil2cpp.so进行解析,下载网站:https://github.com/Perfare/Il2CppD

2022-04-09 11:35:41 13552 1

原创 0x00 蓝牙开发---keil编译报错

缺少NordicSemiconductor.nRF_DeviceFamilyPack.8.16.0包,需要到官网下载(https://www.keil.com/dd2/Pack/#!#third-party-download-dialog)。搜索Nordic Semiconductor nRF ARM devices Device Family Pack with BSD找到对应缺失的版本,下载并安装,那么此时就可以编译成功了。...

2021-05-31 22:30:54 400 1

原创 0x00 PHP代码调试(PHPSTORM + Wampserver)

0x00 前言之前直接使用PHPSTORM + XDebug 进行调试,但是居然有错误,折腾了很久都没搞好(- =。)。偶然发现,居然有集成化工具(集成了XDebug)。那么本篇文章就主要针对PHPSTORM + Wampserver进行调试PHP代码。0x01 工具PHPSTORM:自行在网上找破解版(土豪可以忽略)Wampserver:https://www.wampserver.com/(免费)Chrome浏览器:官方下载(免费)0x02 简易教程在Chrome浏览器中输入chrom

2021-05-17 22:40:36 250 2

原创 0x02 Cisco RV345路由器漏洞研究分享(CVE-2020-3451)

0x0 前言思科公司是全球领先的网络解决方案供应商。依靠自身的技术和对网络经济模式的深刻理解,思科成为了网络应用的成功实践者之⼀。0x1 简介关键点:upload.cgi中的fileparam参数,可以参考:https://www.zerodayinitiative.com/advisories/ZDI-20-1100/0x2 准备固件版本 1.0.00.33:https://software.cisco.com/download/home/286288298/type/282465789/

2021-03-31 22:04:28 1434

原创 物联网设备常见的web服务器——uhttpd源码分析(二)

0x00 前言uHTTPd 是一个 OpenWrt/LUCI 开发者从头编写的 Web 服务器。 它着力于实现一个稳定高效的服务器,能够满足嵌入式设备的轻量级任务需求,且能够与 OpenWrt 的配置框架 (UCI) 整合。默认情况下它被用于 OpenWrt 的 Web 管理接口 LuCI。当然,uHTTPd 也能提供一个常规 Web 服务器所需要的所有功能。0x01 简介本人将大致介绍uhttpd的主要功能,就像openwrt使用uhttpd的主要功能就是web服务器,所以只介绍web服务器的主要功

2021-03-30 22:30:33 1927

原创 蓝牙漏洞挖掘——小米手机抓取蓝牙数据包

打开开发者选项,打开蓝牙调试日志和蓝牙数据包日志开关(如果两者只有其中一个,只需开启一个即可)在拨号盘(拨打电话界面的拨号盘)输入一次 *#*#5959#*#* 即开始抓蓝牙日志操作APP,进行蓝牙通信再拨号盘(拨打电话界面的拨号盘)输入一次 *#*#5959#*#*等待大概半分钟,在文件管理器中 /sdcard/MIUI/debug_log下会生成蓝牙日志压缩包(bugreport-xxxx-xx-xx-xxxxx.zip)在Windows系统解压bugreport..

2021-03-30 09:25:06 5275 1

原创 物联网设备常见的web服务器——uhttpd源码分析(一)

0x00 前言 uHTTPd 是一个 OpenWrt/LUCI 开发者从头编写的 Web 服务器。 它着力于实现一个稳定高效的服务器,能够满足嵌入式设备的轻量级任务需求,且能够与 OpenWrt 的配置框架 (UCI) 整合。默认情况下它被用于 OpenWrt 的 Web 管理接口 LuCI。当然,uHTTPd 也能提供一个常规 Web 服务器所需要的所有功能。0x01 简介...

2021-03-28 09:50:50 2659 1

原创 0x01 D-Link路由器漏洞研究分享

0x0 简介D-Link DIR-816 A2是中国台湾友讯(D-Link)公司的一款无线路由器。攻击者可借助 "datetime" 参数中的shell元字符利用该漏洞在系统上执行任意命令。0x1 准备固件版本 1.10B05:http://support.dlink.com.cn:9000/ProductInfo.aspx?m=DIR-816漏洞存在的程序:goahead0x2 工具1.静态分析工具:IDA2.系统文件获取:binwalk3.动态调试工具:qemu、ID

2021-03-06 22:00:56 1162

原创 0x00 复现影响79款Netgear路由器高危漏洞

0x0 前言来自GRIMM的安全研究人员Adam Nichols和来自越南互联网服务提供商VNPT 的研究人员d4rkn3ss分析报告了一个影响Netgear路由器的严重的栈缓存溢出远程代码执行漏洞,漏洞CVSS 评分为8.8分,漏洞影响79种不同型号的Netgear路由器的758种固件版本,受影响的固件中最早的版本是2007年发布的。远程攻击者利用该漏洞可以以root权限执行代码,并接管设备。影响路由器:AC1450D6220D6300D6400D7000v2D8500DC112A

2021-03-06 21:58:20 1746

原创 设备调试---用万用表寻找GND、RXD、TXD

1. GND将万用表的黑笔接到COM口,并指到蜂鸣档。黑笔触碰天线,红笔随意一个接口,如果哪个接口出现蜂鸣声,则代表这个接口就是GND。2. RXD、TXD将黑笔接到mA口。指针指到如图所示之处。将黑笔触碰天线,红笔随意一个接口,拔插设备电源,如果是RXD则电压大约在3V左右没什么大幅度的跳动,如果是TXD则会大幅度电压跳动。...

2020-05-28 16:33:10 7473

原创 0x05 设备漏洞---firmware-analysis-toolkit报错

使用firmware-analysis-toolkit(https://github.com/attify/firmware-analysis-toolkit)报错:在/home/vagrant/firmadyne中直接使用 python fat.py xxxx.bin会报错,需要进入/home/vagrant/firmadyne/scratch/1 修改run.sh(sudo)中的id=...

2020-02-22 09:59:40 1167

原创 0x04 嵌入式---Ubuntu新版本Netfilter神坑

Ubuntu新版本的神坑一:以往的版本是使用 nf_register_hook(reg)而新版本是 nf_register_net_hook(&init_net, reg)注销函数也改成了 nf_unregister_net_hook(&init_net, reg)Ubuntu新版本的神坑二:以往的版本是使用static unsigned int xxxx(u...

2020-02-13 22:28:14 892

原创 树莓派---新手使用过程

SSH方法:树莓派还有很多版本的系统,可以查看http://shumeipai.nxez.com/download#os。官方镜像下载地址:https://www.raspberrypi.org/downloads/raspbian/这里有三种版本的镜像:1.带图形桌面和推荐软件:Raspbian Stretch with desktop and recommended software...

2020-01-25 10:23:42 2133 1

原创 树莓派---安装Mysql

sudo apt-get install default-mysql-server

2020-01-25 10:20:16 297

原创 树莓派(图像识别)---安装OpenCV

参考:opencv3.3.0:https://www.pyimagesearch.com/2017/09/04/raspbian-stretch-install-opencv-3-python-on-your-raspberry-pi/opencv3.0.0:https://www.pyimagesearch.com/2015/10/26/how-to-install-opencv-3-on-...

2020-01-25 10:17:38 2350

原创 0x04 设备漏洞---MIPS交叉编译环境

为了在x86平台的虚拟机中编译MIPS的应用程序,需要在Ubuntu下建立交叉编译环境。编译过程中,会下载一些依赖包。1.下载Buildroot wget http://buildroot.uclibc.org/downloads/snapshots/buildroot-snapshot.tar.bz22.配置Buildroot cd buildroot sudo apt-get in...

2020-01-23 13:38:37 363

原创 0x03 设备漏洞---QEMU使用

1.QEMU的两种运作模式 使用者模式:QEMU能启动哪些为不同中央处理器比那一的Linux程序 大端QEMU-MIPS和小端QEMU-MIPSEL 命令格式为"qemu-mipsel [options] program [arguments...]" "program"是需要QEMU运行的其他处理器编译的程序,"arguments"是"program"的参数,"options...

2020-01-23 13:37:18 378

原创 0x02 设备漏洞---模拟处理器(QEMU)

QEMU是由Fabrice Bellard编写的模拟处理器自由软件。他与Bochs和PearPC近似,但具有后两者所不具备的一些特性,如高速度及跨平台的特性。经由KQEMU这个闭源的加速器,QEMU能模拟近似真实计算机的速度。1.获取QEMU资源 git clone git://git.qemu-project.org/qemu.git /opt/qemu$ git submo...

2020-01-23 13:36:03 502

原创 0x01 设备漏洞---Binwalk神器使用

1.固件扫描: binwalk xxx.bin2.提取文件: 选项"-e"按照预定义的配置文件中的提取方法从固件中提取探测到的文件及系统 binwalk -e xxx.bin 选项"-M"根据magic签名扫描结果进行递归提取,仅对"-e"和"-dd"选项有效 binwalk -Me xxx.bin 选项"-d"用于限制递归提取的深度,默认深度为8,仅当"-M"选项存在时有效 ...

2020-01-23 13:34:11 385

原创 0x00 设备漏洞---固件提取(Binwalk)

Binwalk安装:Binwalk是一款十分强大的固件分析工具,不仅可以用于提取文件系统,而且可以用于协助研究人员对固件进行分析及逆向工程等。 sudo git clone https://github.com/devttys0/binwalk.git依赖文件(以下都是) sudo apt-get install libqt4-opengl python-opengl python...

2020-01-23 13:32:48 894

原创 0x01 Linux---文件系统目录结构

1./bin包含基本命令,如ls、cp、mkdir等,这个目录中的文件都是可执行的。2./sbin包含系统命令,如modprobe、hwclock、ifconfig等,大多是涉及系统管理的命令,这个目录中的文件都是可执行的。3./dev设备文件存储目录,应用程序通过对这些文件的读写和控制以访问实际的设备。4./etc系统配置文件的所在地,一些服务器的配置文件也在这里,如用户账号及密...

2019-11-06 20:08:01 211

原创 0x03 嵌入式---驱动设备的注册

#include <linux/init.h>#include <linux/module.h>#include <linux/fs.h>#include <linux/device.h>struct file_operations dev_fops;static unsigned int dev_major = 255;static ...

2019-10-30 09:56:53 186

原创 0x02 嵌入式---劫持系统调用函数进行文件隐藏

寻找内核内存中系统调用表的内存地址sys_call_table ,调换该内存中某个函数地址通过部分系统文件 :more /boot/System.map-4.15.0-66-generic (4.15.0-66-generic是内核版本,可以通过uname -r查看) asmlinkage long (*real_mkdir)(const char __user *pathname,umo...

2019-10-30 09:00:11 220

原创 0x01 嵌入式---使用环境变量实现函数劫持

编译:gcc -fPIC -shared xxx.c -o xxx.soLD_PRELOAD 是个环境变量,用于动态库的加载,动态库加载的优先级最高,一般情况下,其加载顺序为LD_PRELOAD>LD_LIBRARY_PATH>/etc/ld.so.cache>/lib>/usr/lib。 export LD_PRELOAD = 绝对路径/xxx.so //加载环...

2019-10-30 08:43:15 227

原创 Source Insight---关于自动补全函数

1、打开Source Insight工程2、单击Options --> Preferences --> Symbol Lookups3、单击Import Symbols for All Projects --> Add --> Import from an INCLUDE path4、如:D:\My_File\linux-0.11\include这样便可以像...

2019-10-28 21:01:34 2465 2

原创 0x03 Openwrt系统---启动流程

bootloader将kernel从flash中拷贝到RAM以后,则其他的事情交给了kernel。原生的Linux内核默认启动的第一个用户空间进程是(busybox)/sbin/init,openwrt则是/etc/preinit,但不是1号进程,而是/sbin/procd/etc/preinit源码(/package/base-files/files/etc),一般刚刚启动会执行/sbin...

2019-10-23 20:20:08 337 1

原创 0x00 Openwrt系统---宏观文件

config:存着系统的配置文件Config-build.in:单纯编译最基本的配置文件。Config-devel.in:基于开发的配置文件。Config-images.in:配置生产镜像文件。Conifg-kernerl.in:配置内核。build_dir:中间件配置文件过程:.in—>.config—>脚本解析作用:控制整个编译过程,是整个系统的配置文件,默认...

2019-10-21 20:39:22 217

原创 0x01 Openwrt系统---应用程序编译

在编译好的package目录下,创建hello文件夹。在hello文件夹中再创建一个src文件夹和Makefile。Makefile:include $(TOPDIR)/rules.mkinclude $(INCLUDE_DIR)/kernel.mkPKG_NAME:=helloPKG_VERSION:=1PKG_RELEASE:=20191015include $(INC...

2019-10-21 20:28:09 262

原创 0x00 Linux---常用命令

1. uname -a //查看内核信息2. netstat -aptn //查看端口3. 下载文件: 使用scp link@目标地址:绝对路径文件 本地路径 一个Linux系统中使用python -m SimpleHTTPServer 8080,另一个Linux系统中使用 wget 目标地址:8080//目标文件 4. find / -name xxx //寻找文件...

2019-10-21 20:19:30 319

原创 0x02 Openwrt系统---驱动设计编译

0x00 Openwrt系统---驱动设计编译创建驱动文件夹:在/package/kernel目录下创建,如:mkdir hello-kernel在hello-kernel文件夹中创建Makefile 和 src文件夹Makefile:include $(TOPDIR)/rules.mkinclude $(INCLUDE_DIR)/kernel.mkPKG_NAME:=...

2019-10-21 20:13:14 283

原创 0x00 嵌入式---浅谈路由器重要硬件

0x00 Flash RAM: 可读可写 内存,一般在电路板上有多个引脚的芯片,就是内存芯片。 这里说的内存一般都是运行内存,对应计算机的内存条。 通常人们说的存储内存对应计算机中的硬盘(外设) nand flash(文件系统、系统内核,不能直接运行代码,需要写入必须先擦除) R...

2019-10-11 11:16:45 443

原创 浅谈---检测隐藏进程和端口

1、int getpriority(int which, int who);返回一组进程的优先级参数which和who确定返回哪一组进程的优先级1、PRIO_PROCESS,一个特定的进程,此时who的取值为进程ID2、PRIO_PGRP,一个进程组的所有进程,此时who的取值为进程组的ID3、PRIO_USER,一个用户拥有的所有进程,此时who的取值为实际用户ID2、...

2019-10-01 20:32:04 419

原创 调试mikrotik路由器中的程序

1. 安装mikrotik时必须使用IDE。2.将ISO映像设置为如图。3.启动后输入用户名 admin 密码为空,登录后按a选择全部,再按 i 安装。4.输入setup,输入 IP地址。5.用主机ping。6.再映像16.04版本的Ubuntu Linux。7.右键虚拟机->电源->打开电源时进入固件。设置成如图所示。8.在/...

2019-08-27 22:10:14 803

原创 关于kali连不上网络

1、IP地址是127.0.0.1,很明显是不可能连的上网的。2、单击 VMware最上方的 编辑---虚拟网络编辑器。出现如下图!3、网关IP地址是192.168.179.2,使用gedit /etc/resolv.conf 命令,将nameserver 192.168.179.2添加进去。4、gedit /etc/network/interfaces 将aoto e...

2019-07-21 08:26:46 2241

原创 CTF--pwn(栈溢出漏洞)

0x00 工具介绍* Ubuntu系统(kali也可以)* gdb-peda 这个是神器,二进制分析必备神器0x01 程序源码#include <stdio.h>#include <string.h>#include <stdlib.h>int main(int argc, char * argv[]){ char buf[4...

2019-05-27 09:30:02 4494 2

空空如也

空空如也

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

TA关注的人

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