之前就玩过DLL注入,但是这次突发奇想的想把这几种常用的注入方式都结合在一起,也是方便自己对某些程序的调试更加方便,也是一次代码复用的机会。

目前DLL注入大概有以下几种注入方式:

  1. 钩子注入
  2. APC回调注入
  3. 远程线程注入
  4. 木马DLL注入
  5. IAT表注入(不知道这个算不算)
  6. 输入法注入
  7. 注册表注入

一、钩子注入

核心函数:SetWindowsHook()

有人提到过使用全局钩子,但是个人认为不怎么推荐,因为影响范围太广,有不可预料的情况发生。所以最好精确到线程。给线程设置消息钩子后,会捕捉键盘、鼠标等消息事件。一但检测到消息发生[……]

瞧瞧更多?

前言

今天提交了几个项目到github上,然而在编辑的README的时候,偶然想起了MarkDown这个神奇的语言,还可以考虑写博客使用,真心不错。对了,对于我们这些使用WordPress的人,可以考虑使用Jetpack原生插件。

笔记

标题

# 一级标题
## 二级标题
## 三级标题

以此类推直到六级,推荐在#号后写空格

列表

有序列表

  • 列1
  • 列2

无序列表

  1. 列1
  2. 列2

列表的显示只需要在文字前加上 – 或 * 即可变为无序列表,有序列表则直接在文字前加 1. 2. 3. 符号要和文字之间加上一个字符的空格。

引用

引用一些别人[……]

瞧瞧更多?

让我们从最经常用到的域开始学起——ModR/M。

在开始之前,先来讲一些最基础的概念。

一个字节如果被转换成二进制,则是由8位(bit)来表示(不足8位的话则高位用0来补足),例如:

示例中的B7的二进制是1011 0111,这是典型的4:4表示格式——1011表示的是B,0111表示的是7,这样,1011 0111表示的就是B7了。

那么我们可不可以用另外一种方式来表示一个字节呢?

答案是肯定的:

请看,我们在这里引进了一种新的表[……]

瞧瞧更多?

今天在阅读鹏大的一片博文,关于opcode的资料,看到了貌似书上没有讲过也从未见过的指令,再此记录一下。

LOCK总线封锁信号,三态输出,低电平有效。LOCK有效时表示CPU不允许其它总线主控者占用总线。这个信号由软件设置,当前指令前加上LOCK前缀时,则在执行这条指令期间LOCK保持有效,阻止其它主控者使用总线。说白了就是lock前缀只保证对当前指令要访问的内存互斥。

也是说lock后,就是一个原子操作。原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一个线程),在单处理器系统(UniProce[……]

瞧瞧更多?

近日,受同学委托,写一个说说的扫码自动分享工具,虽然没有彻底完工,但是打算记录一下(为了方便,我全部选用了http协议,而非https协议,二者区别就在于http://网址 和https://ssl.网址)

首先是登录协议

获取二维码地址:

这个t参数是介于0到1之间的16位随机小数

然后有一个时钟,不断检测是否扫描成功或者验证码失效

返回一个数组性质的东西,失效了会有中文提示,成功了,在数组里会有一个连接,响应了该连接,才算是登录成功,[……]

瞧瞧更多?

今日,一朋友问起,他的日本VPS的MySQL服务器的频繁死掉,经查证是因内存占用过多,导致其内核的自我优化,杀死了占用内存大的进程。这便是Linux的OOM-Killer(Out of Memory killer)机制,如果你分析日志(/var/log/messages)会发现这些:

Linux本身是允许申请的内存大于实际的内存的,因为申请的内存,并不一定是立马就用的,所以–可以更好的节约资源,也就是说内核采用一种过度分配内存(over-commit memory)的办法来间接利用这部分空间。但是一旦实际空间不够用,就需要[……]

瞧瞧更多?

请求报文结构:

1

响应报文结构:

2

HTTP请求方法:

GET ?直接获取网页实体内容,可以发送请求参数,在URL位置,有长度限制

POST 与GET基本相似,但是Request包带请求参数,发送请求参数没有长度限制。

HEAD 用于测试资源的有效性、存在,反应迅速,不回消息主体

PUT 用于请求服务器把请求中实体存储在本机,如果该资源已经存在,则更像该数据,不存在则创建

DELETE 用于删除请求的该资源

TRACE 用于返回服务端接收的数据,可以让客户端了解请求链另一端的接收情况,并用作分析和诊断故障。

CONNECT ?H[……]

瞧瞧更多?

面临比赛,有一题是要求写出接收Cookies的脚本,于是模拟了一下XSS环境。

PS:不考虑WAF等过滤

首先该XSS是存储型的,目前DVAW安全级别为low。

好久不写Web网页–竟然忘了跨域了==一开始代码是这样写的xss

先在服务器上放一个js,xss去加载它。

加载xss很简单:

很好理解的一段代码,远程引入js。创造一个破碎图片,利用错误消息机制调用js的cccgood()函数

getCookies.js:

[……]

瞧瞧更多?

? ?? ?玩破解的朋友用WIN7系统的多吗?我是一直在用WIN7的。用过的朋友应该知道在WIN7系统下,用OD破解或者脱壳的时候,BP CreateFileA无论怎么样都断不下来。但这个断点对我们来说太重要了,去文件自校验,你得用到它吧,破解KEYFILE验证你还得用到它吧,WIN7下下不了这个断点是很纠结的事情。
我们先在OD里CTRL+G来定位一下CreateFileA这个API
75EB62D1 >? ? 8BFF? ?? ?? ? mov edi,edi? ? 来到这里
75EB62D3??/.??55? ?? ?? ?? ?push ebp
75EB62D4??|.?[……]

瞧瞧更多?

URL: bricks/content-1/index.php?id=0
SQL Query: SELECT * FROM users WHERE idusers=0 LIMIT 1

这里的id参数允许通过浏览器的URL进行输入改变输入的值这将会产生不一样的输出。

URL: bricks/content-1/index.php?id=1
SQL Query: SELECT * FROM users WHERE idusers=1 LIMIT 1

这次,页面显示的内容是另一个用户的。自从参数id 被输入便成了一个有趣的测试起点。首先,需要见测试是否容易受到SQL注入攻击的。[……]

瞧瞧更多?