#

Kernel Data and Filtering Support for Windows Server 2008(翻译)

1.介绍

这仅仅是一份供接受审阅和反馈的初稿。收到独立软件开发商的反馈后,一些内容和函数可能会改变。此外,这份文档仅限于适用Microsoft Windows Server® 2008。这些API是根据ISV社区讨论确定的,按照Kernel Evaluation Criteria
很多系统管理安全类应用程序都需要访问内核信息及过滤系统调用的能力,其中一些操作涉及一些进程、线程对象。之前,当第三方软件开发商(ISV)想实现监控/修改/阻断操作时,但操作系统现有提供的过滤回调不支持时,他们一般采用的方式为挂钩在内核服务表(SSDT)中这些内核对象管理(OB)的API。提供官方支持的文档及过滤和访问内核信息的接口有利于操作系统平台,因为挂钩SSDT从来没有官方支持过并且可能会影响操作系统的稳定性。此外,随着在x64平台采用内核补丁保护技术(KPP),在x64平台,ISV不能像32位x86平台中那样使用SSDT Hook了。

Windows x64 Shellcode编写指南(翻译)

前言

对Topher Timzen关于x64 Windows平台下关于Shellcode的翻译,原文链接Windows x64 Shellcode,第一次翻译特别渣,推荐看原文

最近我重写了几个shellcode,将之前32位平台下实现的shellcode移植到64位平台。在向64位平台移植过程,我发现很难在网上找到相关资料,因此我将我的移植过程写成一篇博客(我的第一篇),希望能帮到像我一样需要移植64位shellcode的人。
网上已经有几篇教程介绍关于shellcode的相关基础知识了,因此我不会介绍这些。虽然我会介绍关于调用约定、register clobbering和寄存器相关知识,但是我不会讨论很多汇编基础知识。
请参考Skape的Understanding Windows Shell code等文章,或者资源project-shellcode进行深入学习(Understanding Windows Shell code原始链接失效,这里替换了,原始链接为http://repo.hackerzvoice.net/depot_madchat/windoz/vulns/win32-shellcode.pdf)。
我将介绍32位汇编与64位汇编的差异,以及如何利用Windows系统中的结构体用于开发64位shellcode。我还将介绍我开发的2种漏洞利用辅助开发工具。
在开始之前需要说明的是我仍然在学习漏洞利用开发的初级阶段,为简单化,本文实验的系统为Window 7 x64版本。为简化叙述,x86指Win32平台,x64指Win64平台。

脱壳的艺术(翻译:The Art of Unpacking)

摘要

脱壳是一门艺术,同时也是一种智力挑战,在逆向领域脱壳是最令人头脑兴奋的智力游戏之一。在某些情况下,逆向工作者需要对操作系统内部原理非常熟悉,这样才能识别和绕过壳开发人员的反逆向分析技术,耐心和聪明是成功脱壳的两个主要条件。这些挑战包括壳开发人员开发壳,同时在另一方面也包括逆向工作研究者如何绕过壳的这些保护。
这篇文章主要介绍了壳开发人员使用的一些反逆向工程技术,同时也讨论如何绕过和关闭这些保护的技术和一些公开的工具。当遇到被壳保护的恶意代码的时候,这些信息能让逆向工作研究人员尤其是恶意代码分析人员更加容易的去识别这些技术,然后绕过这些反逆向分析技术去进行下一步的分析工作。这篇文章的第二个目的是让一些开发人员能够去使用这些技术在一定程度上减缓被逆向分析的可能,给代码增加更多的保护。当然,遇到逆向分析高手的时候,什么方法都没辙。
关键词:逆向工程,壳,保护,反调试,反逆向分析

msimg32.dll劫持失败原因分析

问题描述

前一段事件做一个题的时候,需要修改主程序执行逻辑,当时想想应该很简单,直接做dll劫持然后在该DllMain中去修改主程序Exe的执行逻辑(因为之前看到飘云阁的 Visual Assist X劫持用的msimg32)。很顺利的在调试系统(win xp)做完了,达到了预期目的。但是拿到win7和win10上运行顿时就不行了。
主要问题有两个:

  • win7上直接不加载劫持dll,msimg32.dll了
  • win10上会加载msimg32.dll,但是加载时间靠后,在主程序逻辑执行后才被加载,这会修改逻辑也没用了

当时时间紧急,也比较慌。没有分析,改了方案直接修改主程序二进制,文件补丁方式做的

Linux木马分析初体验(BillGates及XORDDOS查杀)




分析工具:

- ida pro
- edb
- strace

事情是这样的,某一天发现某一台服务器数据流量异常,怀疑中了木马而且是一台Windows机器,想着就能一展我手动杀毒的技能了,但是开了机才发下这台机器上通过Hyper-V装了另外5台虚拟机,比我想象中复杂多了而且在机房狭小的环境中。在几台Windows机器上找了良久也未发现木马的踪迹,难道是什么高级木马?好在师兄经验丰富一想肯定是剩下的那台centos有问题,果然一找一大堆,billgates附送个xorddos,不是说linux很安全么,怎么会中马呢? linux是很安全但是耐不住用的人没安全意识啊,直接暴露在公网的主机被设置了ssh弱密码。好了故事编完了,进入正题,这篇博客主要是这两天的linux系统下的木马分析与查杀的一个简单记录。

## BillGates

BillGates就是上面那个比重最大的Linux.BackDoor.Gates.5,2014年就被drweb曝光过,网上很多分析的很多了,但是还是自己跟着走一遍还是能学到很多东西的,特别是第一次分析Linux木马的我。

### 静态分析

基本信息

漏洞调试-释放重引用UAF-cve-2011-0065

##实验环境
操作系统:Windows xp、
辅助环境: MetaSploit、Windbg

##准备
继续漏洞分析学习,上次分析了0158之后就买了泉哥的漏洞战争,很详细很nice,不用到处去找了就跟着书上流程走就可以了。

###样本生成
虽然书的配套资料有样本,但是还是按照之前的流程用MetaSploit生成了漏洞利用样本,然后用python写了个小脚本把样本存下来了(主要是ruby写的利用代码,不怎么看得懂用浏览器访问也不好存)。python脚本和漏洞样本如下