自定义博客皮肤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)
  • 收藏
  • 关注

原创 Windows访问控制 -- SID

windows访问控制之SID

2023-01-08 16:06:17 1728

原创 signtool无响应排查

一次对signtool无响应的简单分析

2022-12-27 21:29:30 175

原创 Windows x64为动态代码添加unwind信息

Windows x64为动态代码添加unwind信息0x000x010x0064位程序的堆栈回溯与32位差别很大,调试器和 RtlCaptureStackBackTrace 无法再使用 ebp 链来遍历整个堆栈,而只能使用 prolog信息来回溯堆栈。正常的C/C++函数的prolog信息在编译时候生成并记录在PE64文件的unwind信息中,另外当前函数对应的异常处理函数也添加在unwind信息的尾部。所以对于不存在unwind信息的函数,异常处理流程无法找到其异常处理函数,也很可能无法正常展开堆栈找

2021-11-14 14:28:47 819

原创 x86记录堆栈信息

0x00x86遍历堆栈(忽略FPO)的原理很简单,就不多说了,直接上代码。 __asm push ebx __try { PVOID addr = NULL; __asm mov ebx,ebp for (size_t i = 0; i < 15; i++) { addr = NULL;...

2019-07-10 14:18:38 323

原创 windows x64异常分发流程

0x00对windows比较熟悉的同学应该都知道SEH这个概念,我们可以通过SEH来来捕获异常,之后决定怎么处理。具体的内容可以查看:https://bbs.pediy.com/thread-173853.htm在上面的文章中,少讲了VCH。我们根据异常的分发流程,在没有挂上调试器的情况下,异常会先被路由到veh,之后进入seh。那么就存在一个很严重的问题,seh是针对特定线程的特定函数的...

2019-06-15 15:31:47 2685 1

原创 !heap -x命令简介

0x00!heap –x命令在堆问题查找中很常见。它可以搜索包含特定堆地址的block,并且拿到堆对应的状态机前block的大小。比如:我们可以看到 Size=0x20,PrevSize=0x60。根据这两个size我们可以很简单地定位到前后的block。后面的block:可以看到 d13b30 的prevSize = d13b10的size前面的block:所以block...

2019-06-15 15:30:06 686

原创 出乎意料的msvcr库链接

0x00最近在维护一个工程代码,因为对可执行文件兼容性的要求,我们就没有链接msvcr* 库。今天增加了一个新功能,编译运行时,提示找不到 msvcr90.dll,直接退出了。使用删减代码的方法,确定了出问题的代码。伪码如下:BOOL bRtn = FALSE;struct A a = {0};struct B b;bRtn = funcA(b.x,b.y,0,&a);if...

2019-04-23 19:46:21 178

原创 windbg wt命令

0x00最近好忙,好久没写博客了,更新一波。Windbg中的wt命令可以简便快速追踪函数调用流程,命令格式如下:我在win10 x64 19h1 release 上测试 CoInitializeEx 的调用流程:使用命令: wt =3e13d4 3e13da命令会显示两部分信息:树形显示的调用堆栈与每个被调用子函数的指令数与调用次数。0x01Wt命令除了追踪调用流程以外我认为在...

2019-03-04 20:52:41 1530

原创 Median of Two Sorted Arrays

0x00难度:HardThere are two sorted arrays nums1 and nums2 of size m and n respectively.Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)).You may assum...

2019-02-16 19:48:25 96

原创 gocolly简介

0x00gocolly是使用golang实现的一个爬虫库。之前在爬某些网页的时候做过简单应用,最近在爬某电商网站的时候,发现关于这个还挺有意思,所以趁年前有时间,看了下源码实现。gocolly内部依赖的是http.Client与goquery。其中goquery的语法和jquery相同,整个流程比较简单。0x01gocolly的使用很简单,具体可以看给出的一些例子。套路一般就是设置相关的...

2019-02-03 21:38:29 4589

原创 Distribute Coins in Binary Tree

0x00难度:MediumGiven the root of a binary tree with N nodes, each node in the tree has node.val coins, and there are N coins total.In one move, we may choose two adjacent nodes and move one coin from...

2019-02-02 19:55:07 297 1

原创 Unique Paths III

0x00难度:HARDOn a 2-dimensional grid, there are 4 types of squares:1 represents the starting square. There is exactly one starting square.2 represents the ending square. There is exactly one endi...

2019-01-27 23:29:45 310

原创 Mac App Crash分析

0x00最近分析了一个Mac App的crash,感觉挺有意思,记录分享下。背景略有点坑,手头有的只是一个二进制文件,一个crash文件。符号文件有,但是不知道怎么在IDA6.8里加载,map文件也没有。Crash文件:1、 每个线程的堆栈;2、 每个模块加载范围;3、 崩溃时寄存器的值;4、 崩溃的简单原因分析(段错误);5、 无效地址附近的符号及内存属性。另外二进制文件经过比...

2019-01-22 19:05:15 2394 1

原创 Largest Perimeter Triangle

0x00难度:EasyGiven an array A of positive lengths, return the largest perimeter of a triangle with non-zero area, formed from 3 of these lengths.If it is impossible to form any triangle of non-zero ...

2019-01-16 22:58:43 198

原创 ShellExecute引起的句柄泄漏

0x00最近在检查公司Client的时候发现句柄表中存在 Process (9516)与Thread (9615): 17060。很明显,问题应该是CreateProcess之后没有将 PPROCESS_INFORMATION 相关的句柄关闭。于是搜索了下代码,发现至少对 Thread 句柄的处理十分干净。所以只能DUMP了进程,拉进Windbg分析。0x01使用 s –d 命令搜索了下内...

2019-01-16 19:32:10 1276 1

原创 Two Sum

0x00难度:EasyGiven an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not u...

2019-01-13 22:52:22 102

原创 ubuntu通过模块名查找包名 ver2.0

0x00昨天写完 ver1.0之后,感觉缺陷实在太严重,所以就写了2.0版本。代码如下:#!/bin/bashif [ $# -lt 1 ];then echo "Usage:" echo "this script depends on curl and sed" echo "$0 component_name" echo "f...

2019-01-04 22:15:39 467

原创 ubuntu通过模块名查找包名ver1.0

0x00最近在编译xxxx时,发现有个configure时提示缺少某个模块,google了一把,找到了对应的包,apt下就解决了。但是感觉每次都google挺搓的,所以就写了一个脚本,用于反查包名。如果有更好的方法,希望不吝赐教。0x01代码如下:#!/bin/bashfunction printHelp(){ echo &quot;Usage:&quot; echo &quot;...

2019-01-03 19:22:15 544 1

原创 c++虚表指针更新

0x00最近分析了一个dump,和虚函数表的指针有关系,总结下。Debug下编译,exe拖进IDA分析。0x01CI虚表:CC虚表:可以看出:1、 虚表的构成在编译之后就已经确定,运行期确定的是虚表指针的指向;2、 对于纯虚函数,虚函数的位置为 purecall,调用purecall就会导致崩溃。0x02我们知道c++的纯虚类无法被实例化,原因很有可能就是纯虚类对象的虚表...

2019-01-03 19:10:03 293

原创 卸载riched20导致崩溃

0x00在公司的crash平台上发现每天都存在调用ClipBoard函数时发生崩溃。函数最终崩溃在 ole32! RemoveClipboardDataObject 中。简易流程如下:pData = (IDataObject *)GetPropW(hClipWnd, L"ClipboardDataObjectInterface");__guard_check_icall_fptr(pDa...

2018-12-18 19:33:38 347

原创 windbg简单调试内存泄漏

0x00首先使用 gflags 设置heap堆栈追踪参数:Gflags.exe /i +ust设置完成后后,我们可以在“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options&amp;amp;lt;Image Name&amp;amp;gt;” GlobalFlag 中看到刚才设置的参数。...

2018-12-01 20:14:33 800 1

原创 windows ALPC简单研究

0x00本文是对ALPC的简单研究,由于时间有限,还有很多细节没有搞清楚,还有很多疏漏。希望能起到抛砖引玉的作用,能找到高手讨论学习。ALPC(Advanced/Asynchronous Local Procedure Call),是微软发展出来替代LPC,用于本机RPC的一种C/S模型技术。但是对用户来说,能看到只有RPC概念,很少能看到ALPC。我们看一个典型的ALPC同步调用堆栈:...

2018-11-26 20:04:44 9102

原创 windbg调试 wow64 内核dump

由于64位系统的普及,使用windbg调试内核dump时,经常会碰到 wow64的情况。在这种情况下,就不太好查看线程的32位用户栈。这里提供一些命令用于解决这个问题。1、 找到你需要查看的thread地址;2、 .thread /w [thread addr],命令解释看帮助文档;3、 .reload /user4、 Kb操作过后用户的32位栈显示出来了。注意,此时windbg处于...

2018-11-24 14:15:47 505

原创 windows驱动创建文件符号链接

0x00最近需要实现一个功能,在驱动中创建文件的符号链接。搜了一圈,只能找到 mklink 命令, mklink 命令显然不能在内核调用。因为大部分的系统调用最终都会调用到内核层的实现,所以整体思路就是搞清楚 mklink 的实现,找到对应的内核接口。0x01简单搜索了下系统目录,发现并没有 mklink 文件,因此怀疑 mklink 是 cmd 的内置命令。验证这个想法很简单,直接把 c...

2018-11-24 14:13:46 988 1

原创 windbg sx命令与简单应用

0x00sx 命令用于控制当异常或者事件发生时调试器的行为。Sx命令对应 windbg.exe(gui)的”debug”菜单项中的”Event Filters”子菜单项。基本语法如下:用法如下:Sx:列出所有支持的event与exception。Sxr:恢复事件与异常处理到默认配置。sx{e|d|i|n} [-c “Cmd1”] [-c2 “Cmd2”] [-h] {Excepti...

2018-11-24 14:06:54 317

原创 利用AppInit_Dlls注入在win10上的限制

0x00AppInit_Dlls注入方法特别简便,日常注入测试首选,在win7上屡试不爽,具体原理如下:support.microsoft.com/en-us/help/…docs.microsoft.com/en-us/windo…windows-7-and-windows-server-2008-r2但是最近使用win10系统之后发现,注入方法失效。在检查过所有的配置都正确之后,决定使...

2018-11-24 13:58:48 3308 2

空空如也

空空如也

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

TA关注的人

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