自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

leeeryan

I hear and I forget. I see and I remember. I do and I understand.

  • 博客(82)
  • 资源 (5)
  • 收藏
  • 关注

转载 动态污点分析浅述

动态污点分析浅述原理<br />动态污点分析(Dynamic Taint Analysis)是近几年刚刚被提出的一种新的有效检测各种蠕虫攻击和自动提取特征码用于IDS和IPS的一系列解决方案。其原理主要分为两大部分:动态污点标记和非法操作检测、以及更精确的提取特征码的方法。动态污点标记和非法操作检测:<br />其主要原理是将来自于网络等不被信任的渠道的数据都会被标记为“被污染”的,由此产生的一系列算术和逻辑操作新生成的数据也会继承源数据的“是否被 污染”的属性,这样,一旦检测到被污染的数据作为跳转

2011-03-22 12:52:00 8499 2

转载 抓取bing图片的Python代码

<br />import urllibimport timedef main(): url = 'http://www.bing.com' f = urllib.urlopen(url) html = f.read() f.close() a = html[html.index('//fd//hpk2'):] data = a[:a.index('/',id:')] url = data.replace('//', '')

2011-03-13 21:43:00 1359

转载 Linux的通用makefile模板

Linux的通用makefile模板<br /># 下面的变量可以在shell 的环境变量里面指定。<br /># 也可以象下面这样在 Makefile 里面指定。<br /># CC=gcc                                          # 编译器<br /># CFLAGS=-Wall -Werror -g           # 编译器参数<br /># LD=gcc                                         

2011-03-09 23:48:00 822

转载 CentOS下安装Git

CentOS下安装Git<br />Git 是一个版本控制软件,可按如下步骤进行源码安装。<br />1、安装依赖项。<br /># yum install gettext-devel expat-devel curl-devel zlib-devel openssl-devel<br />2、获取Git的源码。<br /># cd /usr/local/src<br /># wget http://kernel.org/pub/software/scm/git/git-1.7.1.tar.gz<br

2011-03-08 23:45:00 726

原创 C++异常处理分析,及格式化异常处理方法

// C++异常处理分析,及格式化异常处理方法//#include #include #include using namespace std;/*对于一个Windows平台上的C++程序来说,异常其实可以分为两种:Win32异常,也就是结构化异常(Structured Exception)以及C++异常。无论是Win32还是C++都为我们提供了一些机制来处理未被正常捕获的异常,让我们在应用程序退出之前尽一些人事。针对C++异常,可以使用set_unexpected,但微

2011-03-02 17:57:00 1640

转载 vim插件ZenCoding一些常用的操作

vim插件ZenCoding一些常用的操作<br />相当的酷,记录一些常用的操作<br />安装很方便,不再像我以前使用的sparkup.vim得配置python环境了,可直接到http://github.com/mattn/zencoding-vim下载zencoding.vim文件放到vimfiles/plugin或.vim/plugin目录就OK了。<br />接下来介绍些使用方法(Copy自LazyHack的使用zen coding for vim快速编写html代码)展开缩写<b

2011-01-16 16:32:00 1382

转载 vimrc example

vim帮助文档Example .vimrc  1 " Modeline and Notes {  2 "   vim: set foldmarker={,} foldlevel=0 spell:  3 "  4 "   This is my personal .vimrc, I don't recommend you copy it, just   5 "   use the "   pieces you want(and understand!).  When you copy a   6 "   .vi

2011-01-12 23:00:00 817

原创 chromium中绑定JavaScript层级中的顶层对象Window到v8中的入口

<br />//chromium中绑定JavaScript 层级中的顶层对象Window到v8中的入口bool V8DOMWindowShell::installDOMWindow(v8::Handle<v8::Context> context, DOMWindow* window){ //创建一个JS window对象 v8::Handle<v8::Function> windowConstructor = V8DOMWrapper::getConstructor(&V8DOM

2011-01-12 20:33:00 2452 1

原创 JavaScript中Object 对象的Prototype属性

Prototype对该对象的对象原型的引用。对于所有的对象,它默认返回 Object 对象的一个实例。顾名思义,如果在prototype的基础上添加了某些属性,之后基于该对象的新生对象都会受到影响!所以应该避免使用prototype原型来扩展,因为prototype原型会容易“污染”Object对象本身固有的函数方法。

2011-01-12 19:22:00 1486

原创 chromium中脚本执行的代码路径

webkit中脚本执行代码路径: void HTMLDocumentParser::pumpTokenizer(SynchronousMode mode){。。。bool HTMLDocumentParser::runScriptsForPausedTreeBuilder(){。。。 bool HTMLScriptRunner::execute(PassRefPtr scriptElement, const TextPosition1& scriptStartPosi

2011-01-12 17:23:00 1547

转载 WebKit之WebCore篇

<br />转自: 浅谈WebKi谈WebKit之WWebKit之WebCore篇 <br /> <br />1、从源代码目录结构来看<br />WebCore目录主要包括如下目录:<br />bindings 包含将Dom Binding给JavascriptCore方面的代码,同时包含依据idl接口描述文件,自动生成对应于JavascriptCore的Binding实现的脚本等内容;<br /><br />bridge 主要包含NPPlugin方面的接口访问等内容;<br /><br />c

2011-01-12 14:18:00 3767

转载 WebKit之Port

转自:浅谈WebKit之Port篇 (自备梯子)1、与WebCore交互接口的实现在WebKit源代码目录结构中WebKit目录下分别包含gtk、mac、qt、win、wx目录,其分别对应不同的Port移植方式,在每一个目录下面都包括 WebCoreSupport目录,而在不同的WebCoreSupport目录下分别包含有对类接口WebCore::ChromeClient、 WebCore::ContextMenuClient、WebCore::DragClient、WebCore::EditorC

2011-01-12 14:01:00 3024

转载 JavaScriptCore、V8如何与WebCore交互

<br />在WebCore::Frame的数据结构中包含数据成员KJSProxy* m_jscript;而在Chrome的代码中调整为JSBridge* m_jscript;而针对不同实现JavaScriptCore、V8,分别有:<br />class KJSBridge : public JSBridge {<br />public:<br />KJSBridge(Frame* frame) : m_proxy(new KJSProxy(frame)) { }<br />virtual

2011-01-12 13:47:00 2643

转载 WebKit中的设计模式:Noncopyable

转自:WebKit中的设计模式(一): Noncopyable WebKit作为一款优秀的浏览器,其中有着非常优秀的设计,值得我们借鉴。本文的目的就是剖析WebKit中值得借鉴的设计模式,了解其设计思想,以达到能为我们使用的目的。关于设计模式,推荐阅读经典书籍>。本文所分析的设计模式,并非全部都是书上所提及的设计模式。因为设计模式是一个非常泛的概念,只要能够重复使用且能解决特定问题的设计,应该都可以算作设计模式,希望朋友们不要较真。 言归正传,首先我们来分析以下WebKit中Noncopyable的使用

2011-01-12 13:35:00 945

转载 WebKit中的RefPtr和PassRefPtr

转自:webkit技术译文系列(二):RefPtr和PassRefPtr基础 原文链接:http://webkit.org/coding/RefPtr.html 历史 WebKit中的许多对象是引用计数的(reference counted),采用的模式就是类具有ref和deref成员函数增加和减少引用计数。每个ref调用必须有一个deref与之匹配。当在引用计数值为 1的对象上调用deref方法时,对象删除。WebKit中的许多类通过继承RefCounted类模板应用该模式。 时间回溯到2005年

2011-01-12 13:32:00 1067

转载 WebKit如何加载web页面

<br />转自:WebKit如何加载web页面<br />原文链接:http://webkit.org/blog/1188/how-webkit-loads-a-web-page/<br />在WebKit能够渲染web页面之前,它必须从网络加载页面和子资源。从web加载资源涉及到许多层,本文将集中于WebCore,即WebKit的主要渲染组件,如何参与加载过程。<br />WebKit包含两条加载管道,一个用于加载文档到框架(frame),另一个用于加载子资源(如图片和脚本)。下图总结了两条管道涉及的主

2011-01-12 13:10:00 1000

转载 WebCore中的Dom和Render

int xPos() const; int yPos() const; 转自:WebCore中的渲染机制(一):基础知识原文链接:http://webkit.org/blog/114/webcore-rendering-i-the-basics/DOM树web页面解析后形成节点树,称作文档对象模型(简称DOM),树上所有节点的基类是Node。Node.h节点分为几类,与渲染代码相关的节点类型有:Document - 树的根节点总是Document,WebCore中有三个文档类: Docume

2011-01-12 13:06:00 1007

转载 WebCore中的主要对象

转自:Webkit技术译文系列(一):WebCore中的主要对象 原文链接 http://webkit.org/coding/major-objects.html WebCore使用许多对象来表示内存中的web页面,本文描述了其中的一些主要对象以及它们之间的关系。在某些情况下,对象之间的连接会断开,导致空指针引用。因此在遍历这些指针时,代码必须仔细的考虑"分离"(detached)的情形,并优雅的处理空指针。 +---------+ | Chrome | +----+----+

2011-01-12 12:47:00 840

原创 Linux入门

<br />红帽Linux Book

2011-01-12 12:40:00 542

转载 DocBook 助你完成传世之作

DocBook 助你完成传世之作文档的技术革命蒋鑫<br />摘要<br />DocBook 是当前风行于开放源码世界的一种文档撰写格式,已经成为计算机文档撰写的事实上的规范。 DocBook 是基于SGML/XML的、面向结构的文档撰写模式。它打破了传统的、面向表现的、所见即所得文档撰写模式。愈早使用 DocBook,愈早获得知识持续积累的快乐,享受完成传世之作的成就感。<br /> <br />目录1. DocBook 初体验1.1. 是否似曾相识1.2. 文档是这样完成的2. DocB

2011-01-12 12:26:00 903

原创 开源世界旅行手册

开源世界旅行手册<br />目录授权致谢序言更新纪录导读如何写作科技文档I. 气候1. GUI? CLI? 2. UNIX 缩写风格3. 版本号的迷雾4.   Vim 还是 Emacs5.   DocBook 还是 TeX6. 完全用 Gnu/Linux 工作7. 病毒8. 磁盘 分区9. 文件系统10.   发行版介绍11.   编程语言12. 无根的根:无名师的 Unix 心传II. 地理13. 基础知识14. 命令系统15. 基本系统16. 软件管理17. 核心工具集18. 编译工具链19. 图形界

2011-01-12 12:21:00 1342

原创 Metasploit Support

<br />Metasploit Support<br /> <br />Metasploit Unleashed - Offensive Security<br /> <br />Metasploit @ WikiBooks

2011-01-12 10:24:00 563

转载 Google 搜索常用命令 -- Google Commands

<br />Google 搜索常用命令。Using Google to find what type of technologies a company is using: site:<companydomain> careers<br /> site:<companydomain> jobs<br /> site:<companydomain> openingsUseful directives site:<site><br />

2011-01-12 09:40:00 730

转载 Google Web应用程序安全扫描工具-skipfish (1.41 beta)

<br /> skipfish是一款免费、开源、Web应用程序安全检测工具。skipfish主要特点:— 速度快:Skipfish完全由C编写,高度优化的HTTP处理能力以及最低的CPU占用,它每秒钟可以轻松处理2000个请求;— 使用简单:采用启发式扫描技术,主持多种Web架构。具备自动学习能力,字典动态创建,表单自动完成等功能。— 前沿安全逻辑算法:性能高、误报率低。<br />skipfish支持Linux, FreeBSD 7.0+, MacOS X, 和 Windows (Cygwin) 环境

2011-01-12 09:38:00 1177

转载 IDA Pro google 互动查询插件 - RE-Google

<br />RE-Googl是一个ida pro反汇编交互式插件,它可以自动通过google查询二进制反汇编过程中包含的函数相关信息。排在前面的结果将会以注释的方式显示,显示的信息是一个链接,双击可以打开。RE-Googl首先需要IDA,然后需要 IDAPython,最后需要安装Google Data APIs for Python。<br />工具更多信息及下载:http://regoogle.carnivore.it/<br />~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

2011-01-12 09:37:00 794

转载 javascript优化编译器 - Closure Compiler

<br /> Closure Compiler是一个javascript优化编译工具,它会解析javascript代码并分析,移除其中的无用和重复代码,尽最大可能减少javascript的大小。它还能够检测语法错误和变量引用、类型、警告及常见的javascript陷阱。Closure Compiler被用在许多google开发的javascript应用程序中,包括Gmail,Google Web Search,Google Maps和Google Docs等。<br />工具更多信息及下

2011-01-12 09:27:00 1105

转载 Drive-By Download测试框架 - drivesploit

<br /> Drive-By Download是一种网络攻击手段,国内称为“网站挂马攻击”。Drive-By Download是当今最流行的恶意软件传播手段,它主要是综合大量的已知漏洞(也可能包括未知漏洞)对用户的浏览器发起攻击。可实施Drive-By Download的综合性+工具相当多,大多都是傻瓜式的,如著名的Zeus, Phoenix等exploit套件,它们都具有较高的易用性和成功率,drivesploit是一个基于metasploit的Drive-By Download

2011-01-12 09:25:00 1317

转载 MS10-081/CVE-2010-2746

<br />comctl32.dll是Windows应用程序公用GUI图形用户界面模块。 在使用第三方可伸缩矢量图形 (SVG) 查看器时,Windows 公共控件库呈现特制网站的方式中存在一个远程执行代码漏洞。 如果用户访问了特制网页,此漏洞可能允许远程执行代码。<br /><br />[+]info:<br />~~~~~~~~~<br />MS10-081<br />CVE-2010-2746<br /><br />[+]poc:<br />#!/usr/bin/env ruby

2011-01-12 09:24:00 892

原创 微软的网页木马检测方案-Zozzle, Nozzle

<br />Nozzle: Protecting Browsers Against Heap Spraying Attacks<br /> <br />Zozzle: Low-overhead Mostly Static JavaScript Malware Detection<br /> <br />=================================================<br />开源低交互蜜罐(沙盒)PHoneyC (Linux+Python)<br /> 

2011-01-11 12:19:00 2925

转载 《0day安全:软件漏洞分析技术第二版》

简单说来,这次再版的原因有二:首先,国人深知与时俱进的道理,技术上面更是如此。随着windows平台保护技术的不断改进,win7的广泛使用,第一版中所述的很多方法已有较大局限。为此我们逐一搜集了近年来各类安全峰会上的前沿文章,读懂消化之后将其重绘于书中。可以说我们在这次再版中逐一讲述并总结了目前世界上windows 平台下几乎所有最前沿的内存exploit技术。时效性是再版的重要原因。 然后,第一版的编纂始于我求学阶段的一个简单的冲动:把手头所有的文档手稿编纂成册与大家分享。限于本人学识有限

2011-01-11 09:17:00 6182

转载 在线安全,在线杀毒,在线可疑文件分析,在线挂马检测

<br />一、病毒可疑文件分析<br />http://www.virscan.org/<br />http://www.virustotal.com/zh-cn/<br />二、网站挂马检测<br />http://union.rising.com.cn/index/index.aspx<br />三、在线杀毒网站<br />国内网站:<br />1.瑞星在线杀毒http://online.rising.com.cn/free/index.htm<br />2.金山毒霸在线杀毒http://

2011-01-10 22:08:00 2893

转载 免杀迅雷PPLAYER.DLL ActiveX控件溢出漏洞

现在各主流杀软对IE网马的查杀规律其实比较明了,主要集中在下列几个地方:1)ShellCode。如“var sc="%u6a90%u596a%u09eb%u805e……"”,SC一般都是以UNCIDOE形式给出的,自然是重点查杀对象,需作相应的变形。2)  内存扩充代码。这部分代码相信大家比较熟悉,用JavaScript写的,一般整段代码都作为查杀对象。如果能从中挑出一部分代码作变形的话,躲避查杀也是有可能的。变形的方法之一就是通过String.fromCharCode函数来回切换。3)  漏洞特征点,例如

2011-01-10 21:50:00 908

转载 网马的反挂马检测及精确投放(免杀)

前天shadow在群里提到或许可以采取一些方法来实现对挂马检测系统的绕过,遂与其深入探讨了下,事后又考虑到网马的精确投放,总结了一些点做了点儿技术实现,并在这里简单记录下想到的一些想法,欢迎其他大牛不吝指教。1、通过判断客户端安装程序指定挂马这个是个老早的话题,早在两年前cos他们就在xkungfoo议题上提到过了:通过img标签远程域检测本地域软件是否存在 。当然还可以通过其他方式,譬如判断目标组件是否可被调用等。这样做主要有几方面原因:一是对于某些搞不定的杀毒软件、防火墙或hips直接采取绕过的

2011-01-10 21:38:00 1001

原创 JavaScript中的Bom和Dom

Bom (Browser Object Model) BOM的顶层是window对象。在客户端 JavaScript(浏览器) 中,Window 对象就是全局对象。 全局对象只是一个对象,而不是类。既没有构造函数,也无法实例化一个新的全局对象。所有的表达式都在当前的环境中计算。 也就是说,要引用当前窗口根本不需要特殊的语法,可以把那个窗口的属性作为全局变量来使用。 例如,可以只写 document,而不必写 window.document。 Window 对象中五个重要属性:

2011-01-10 14:00:00 855

原创 JavaScript中的对象

一个完整的 JavaScript 实现是由以下 3 个不同部分组成的: 核心(ECMAScript) 文档对象模型(DOM) 浏览器对象模型(BOM) 一种面向对象语言需要向开发者提供四种基本能力: 封装 - 把相关的信息(无论数据或方法)存储在对象中的能力 聚集 - 把一个对象存储在另一个对象内的能力 继承 - 由另一个类(或多个类)得来类的属性和方法的能力 多态 - 编写能以多种方法运行的函数或方法的能力 ECMAScript 支持

2011-01-09 14:45:00 738

转载 Google Hacking 的实现以及应用

google hacking其实并算不上什么新东西,在早几年我在一些国外站点上就看见过相关的介绍,但是由于当时并没有重视这种技术,认为最多就只是用来找找未改名的mdb或者别人留下的webshell什么的,并无太大实际用途.但是前段时间仔细啃了些资料才猛然发觉google hacking其实并非如此简单...

2011-01-08 23:14:00 667

原创 1337

Leet (L337, 3L337, 31337, leetspeak, eleet, Leetors, L3370rz或1337),又称黑客 语,是指一种发源于欧美 地区的BBS、线上游戏 和黑客 社群所使用的文字书写方式。通常是把拉丁字母转变成数字或是特殊符号 ,例如E写成3、A写成@等。或是将单字写成同音的字母或数字,如to写成2、for写成4等等。Leet一词源于英语 的elite(义:精英),由elite转为eleet后再转变为leet。

2011-01-08 22:58:00 1374

原创 V8 JavaScript Engine 编译与使用注意事项-使用V8

  二 使用V8   1. 使用静态库版本,必须引入winmm.lib和ws2_32.lib #include using namespace v8;#pragma comment(lib,"winmm.lib")#pragma comment(lib,"ws2_32.lib")#pragma comment(lib,"libv8-vc90-mdd.lib") 否则会得到类似下面的错误:error LNK201

2010-12-10 22:53:00 2041

原创 V8 JavaScript Engine 编译与使用注意事项-编译V8(win7+VS2008)

V8 JavaScript Engine 编译与使用注意事项(win7+VS2008)

2010-12-10 21:18:00 5099 1

原创 Boost Regex 正则表达式测试工具 BRegexTest

boost regex 正则表达式测试工具

2010-12-08 23:42:00 1745 1

Boost Regex 测试工具

一个正则表达式测试工具BRegexTest;采用boost.regex 【注意】非常抱歉,这个有bug,占时没bug的在 http://code.google.com/p/bregextest/downloads/list 源代码也给出了,如果你加了一些很棒的功能,希望能commit。谢谢

2010-12-08

Google Safe Browsing API

Google Safe Browsing API

2010-11-18

ShellCodeDbg

ShellCodeDbg http://blog.csdn.net/leeeryan/archive/2010/09/26/5907051.aspx 本文的测试例子

2010-09-26

一个基于V8 JavaScript Engine非常简单的JavaScript解密小程序

一个基于V8 JavaScript Engine非常简单的JavaScript解密小程序。 程序功能:将加密的JavaScript代码拷贝到test/input.txt文件中,解密结果生成到test/output.txt文件中

2010-09-25

AddressMap

一张内存映射表,支持合并 删除 添加 判断等操作 元素结构为内存地址和内存大小

2010-08-08

空空如也

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

TA关注的人

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