自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

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

原创 c++下的中文处理:编码与转码

处理平台:linux1. 中文编码中文字符常见的编码方式有:gbk, gb2312, gb18030和utf-8。这些都是内码,即字符存储在计算机中的编码方式。gb2312编码由国家标准总局于1980制定,共收录6763个汉字,其中一级汉字3755个,二级汉字3008个;同时收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄西里尔字母在内的682个字符。在gb2312编码下,汉字

2014-07-18 23:49:49 1598 1

原创 杂技算法和翻转算法效率对比

《编程珠玑》上的一道题,s

2014-06-01 10:15:01 264

原创 TEMU插件tracecap的编译

编译环境为Ubuntu-12.04  (32位)编译所需文件清单:temu-1.0.tar.gzbitblaze-additional-2010-06.tar.gztemu-release2009-gcc4.patchsleuthkit-2.04.tar.gzsleuthkit-2.04.patchsleuthkit-linux3.patchllconf-0.4.6

2014-01-15 17:15:30 593

原创 TEMU源码分析

TEMU属于开源二进制分析平台Bitblaze的动态分析组件, Bitblaze项目由加州大学Berkeley分校的Dawn Song领导开发。TEMU基于模拟器QEMU构建。由于QEMU是一个全系统的模拟器,能模拟不同的CPU架构,所以TEMU也能执行全系统的动态分析,即能追踪和分析整个guest OS的运行。理论上TEMU除了支持x86的处理器架构外,还可以支持其他的处理器架构,如Powe

2014-01-15 13:37:33 761 1

原创 Web图表控件和布局的一些资料

最近要用asp.net来显示各种图表,如曲线图、饼图、柱状图等,搜了一圈,发现几个不错的选择:1.首先是微软自己推出的MS Control,已经集成在Visual Studio中(我用的vs2010)图表控件示例 http://archive.msdn.microsoft.com/mschart/Release/ProjectReleases.aspx?ReleaseId=1591官方

2013-07-29 20:55:09 307

原创 tcpdump的用法

首先是摘自鸟哥的介绍:http://vbird.dic.ksu.edu.tw/linux_server/0140networkcommand_5.php[root@www ~]# tcpdump [-AennqX] [-i 接口] [-w 储存档名] [-c 次数] \ [-r 档案] [所欲撷取的封包数据格式]选项与参数:-A :封包的内容以

2013-07-15 14:35:45 290

原创 Dos批处理脚本和AutoHotKey脚本的编写

先下载安装7-zip,其安装目录下的命令7z支持命令操作,将目录添加到系统环境变量我的文件密码均为"infected",则对应解压命令为:7z e -pinfected %Filename%e表示解压,-p接解压密码,没有空格首先想到的是写dos脚本,这种方式最快了dos命令的说明可参考:http://blog.csdn.net/tjhd1989/article/detai

2013-05-29 17:46:32 514

原创 WinDbg内核调试笔记

在网上找的WinDbg单独安装包为dbg_x86_6.12.2.633.msi环境配置:主机win7 + VMware虚拟机XP sp3(原版系统)1. 进入XP系统,打开终端添加带调试的启动项:bootcfg /copy /d "XP Professional with Debug" /id 1 bootcfg /debug on /id 2 /port com1 /BAUD

2013-05-26 13:21:38 421

原创 使用INetSim模拟Internet

分析恶意软件时,有时需要对其发起各种网络请求进行响应才能继续观察其行为。INetSim正是一款可以模拟各种Internet交互的软件,目前支持的协议有HTTP/HTTPS、SMTP/SMTPS、POP3/POP3S、DNS、FTP/FTPS、TFTP、IRC,以及NTP等。可以配置INetSim以fake模式响应HTTP/HTTPS请求,INetSim会基于访问的文件扩展名返回相应的文件,比如访问

2013-05-23 11:41:07 1051

原创 Python复杂网络包NetworkX的安装和使用

最近要处理一些与图相关的问题,就搜到了networkx包,利用这个包可以非常方便地构建图形,还可调用许多图的算法,比如判断同构,求连通分支等,以及画图和保存到文件。官方参考文档:http://networkx.github.io/documentation/latest/index.html 文档写得还是非常清楚明白的,Examples有很多例子,Algorithms实现了很多图算法。

2013-05-21 22:39:18 942

原创 pydot包的安装和使用

pydot包提供了使用dot语言的python接口,可以方便地创建各种有向图和无向图。官方网站:https://code.google.com/p/pydot/ (目前pydot只支持到graphviz-2.26.3)安装需要:pyparsing http://pyparsing.wikispaces.com/ (我下载的pyparsing-1.5.7.win32-py2.7.

2013-05-21 11:19:17 3033

原创 Linux内核双向循环链表的用法

比如要创建process_lis,那么list的初始化可以这样:static LIST_HEAD(process_list);也可以这样:struct list_head process_list;INIT_LIST_HEAD(&process_lis);在创建自己的链表时,要注意list.h中定义的结构体struct list_head和自己定义的结构

2013-05-15 16:48:28 409

转载 Suffix Tree 学习笔记 I

Author:If转载自:http://www.if-yu.info/2010/10/3/suffix-tree.html1   Prologue我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要读我我是意识流不要

2013-04-26 23:13:46 438

原创 利用virustotal公共API获取病毒样本扫描结果

virustotal.com网站允许用户上传恶意样本,然后返回46个病毒扫描器的扫描报告。利用virustotal.com网站提供的公共API,可以编写python脚本自动获取这个扫描报告。官方网站就有详细的教程 https://www.virustotal.com/en/documentation/public-api/首先要注册一个帐号,登录后在帐号Profile下可以发现

2013-04-26 15:09:44 2717 7

原创 MetaSploit入门

简单的使用了一下MetaSploit,作个备忘,有需要的时候再系统学习下。MetaSploit下载地址:https://github.com/rapid7/metasploit-framework/wiki/Downloads-by-Version我下的最新版本号为4.4.0-dev,集成了840 exploits - 495 auxiliary - 250 payloads - 27 e

2013-04-10 14:51:01 898

原创 shellcode入门

整理自《0day安全:软件漏洞分析技术》第2版系统:VMware安装的Window XP SP2工具:vc++6.0, ollydbg, Dependency Walker, python步骤:通过内联汇编__asm实现功能,再在OllyDbg中提取对应字节码,最后转化为shellcode。例1:该程序弹出一个对话框,点击确认后程序退出执行用到的两个函数MessageBox

2013-04-09 11:34:47 541

原创 资料汇总:KiFastCallEntry,SSDT及系统调用

Hook KiFastCallEntry监控系统调用http://bbs.pediy.com/showthread.php?t=144538Windows系统调用架构分析—也谈KiFastCallEntry函数地址的获取http://blog.csdn.net/otishiono/article/details/7606429KiFastCallEntry KiServic

2013-04-01 16:42:41 462

原创 利用ctypes模块实现python和c/c++交互

利用python的ctypes模块可以在python中调用c/c++写的代码。但是c/c++写的代码要编译成dll文件,在dll中导出你想在python中调用的函数或变量。ctypes的详细用法见官方文档: http://docs.python.org/2/library/ctypes.html这里只是个人的一个简单总结。1. 加载Windows系统自带的dll文件: #加载c

2013-03-23 16:33:33 1091

原创 利用Immunity Debugger部署钩子

ImmDbg提供了多种钩子。1. 软钩子软钩子针对各种不同调试事件发生时调用的,调试事件如断点、异常、加载或卸载dll、创建或销毁进程线程等。以断点命中时触发钩子LogBpHook为例:import immlibfrom immlib import LogBpHookimport struct#首先继承LogBpHook定义自己的钩子类,重点实现run函数class

2013-03-23 14:06:41 1412 4

转载 pydbg测试实例(五) 利用pydbg部署软钩子

转自《python灰帽子》第6章目标:对firefox浏览器nspr4.dll模块的PR_Write函数下钩子,从其第二个参数获取未加密的数据,如果包含passwd字符串则输出该数据说明:软钩子本质上是扩展了的软断点处理例程,适合于拦截那些调用次数少的函数添加钩子的函数位于包utils中,通过help(utils.hooking)可以查看相关信息。部

2013-01-16 11:46:53 870 4

转载 pydbg测试实例(四) ftp服务器warftpd-1.65的漏洞测试

转自《python灰帽子》第4章目标:监控危险函数的每次调用,并摄取快照。若出现非法内存访问,恢复到最近一次危险函数调用点,单步执行,重现非法内存访问。(前面三个例子的综合)danger_track.pyfrom pydbg import *from pydbg.defines import *import utilsMAX_INST = 10dangerous_fu

2013-01-15 21:03:10 996 6

转载 pydbg测试实例(三)进程快照的获取和恢复

转自《python灰帽子》第4章目标:获取进程快照和恢复进程思路:开启两个线程,第一线程创建一个pydbg调试器对象,并用它加载一个可执行程序;第二线程通过pydbg的方法process_snapshot()和process_restore()来获取进程快照和恢复,在获取快照或恢复的时候都要暂停进程的所有线程snapshot.pyfrom pydbg import *f

2013-01-15 10:18:36 676

转载 pydbg测试实例(一)软断点设置和内存读写

转自《python灰帽子》第4章目标:对printf函数设置断点,获取其第2个运行参数,并更改为一个随机数脚本一:printf_random.pyfrom pydbg import *from pydbg.defines import *import structimport random# This is our user defined callback

2013-01-14 20:50:31 492

转载 pydbg测试实例(二)内存崩溃信息的输出

转自《python灰帽子》第4章目标:测试非法内存访问,输出崩溃地址,上下文和崩溃地址前后的指令脚本一:access_violation_handler.py(utils工具不包含在pydbg中,而是包含在paimei中,下载地址:https://github.com/OpenRCE/paimei,解压到python的site-packages即可)from p

2013-01-14 20:33:13 524

原创 pydbg追踪指令和API调用

通过这两个实例可以大概了解下pydbg的用法。如何实现追踪指令见https://github.com/OpenRCE/paimei/blob/master/tracer_single_step.pyPedram Amini所写,先定义断点句柄,其中获得exe主模块的映像基址和结束地址,然后将所有线程设为单步模式。接着又定义单步处理句柄,其中如果单步异常地址在模块内,输出该地址和

2013-01-14 11:33:11 669

原创 pydbg的安装

在Windows下安装pydbg最简单的方法就是下载别人已经编译好的可执行包:http://www.lfd.uci.edu/~gohlke/pythonlibs/#pydbg复杂点的方法如下:1. 下载libdsam-1.5 (pydbg依赖该库)http://code.google.com/p/libdasm/downloads/list解压后进入libdasm-1.5\py

2013-01-12 13:10:46 693

原创 用gdb调试temu及插件

在终端输入:gdb ~/bitblaze/temu-1.0/tracecap/temu或者直接设置好参数gdb  --args ~/bitblaze/temu-1.0/tracecap/temu ~/vm/winxp_sp2_by_qemu.img -monitor stdio -snapshot -m 512 -load-plugin ~/bitblaze/temu-1.0/sa

2013-01-05 12:35:25 626

原创 TEMU的trace文件分析

temu运行后会在启动时的目录生成文件guest.log和temu.log,guest.log按顺序记录进程的创建,加载的模块,调用的函数,及进程的销毁。temu.log始终为空。加载sample_plugin目录下的插件,会多生成文件plugin.log,该文件对应于源文件中的fprintf输出。temu的终端输出对应term_printf的输出。------------------

2013-01-04 22:21:51 957

转载 makefile,Nmakfile与gdb

跟我一起写Makefile http://blog.csdn.net/haoel/article/details/2886Windows平台下Makefile学习笔记 http://blog.csdn.net/clever101/article/details/8147352用GDB调试程序 http://blog.csdn.net/haoel/article/details/28

2012-12-28 08:56:14 208

转载 makefile,Nmakefile与gdb

跟我一起写Makefile http://blog.csdn.net/haoel/article/details/2886Windows平台下Makefile学习笔记 http://blog.csdn.net/clever101/article/details/8147352用GDB调试程序 http://blog.csdn.net/haoel/article/details/

2012-12-27 17:38:17 53

原创 dll的动态加载

接前篇文章,通过一个简单的例子讲解dll的动态加载新建名称为testdll的工程,下一步时注意应用类型选为dll,添加文件addfunc.h和addfunc.cppaddfunc.h 声明两个加法函数// addfunc.h#ifdef TESTDLL_EXPORTS#define TESTDLL_API __declspec(dllexport)#else#defi

2012-12-25 21:08:03 258

翻译 创建和使用动态链接库dll

1. 在Visual Studio中创建一个项目类型为Win32 Console的项目,名称为MathFuncsDll,下一步,应用类型选为DLL,附加选项为Empty project,完成。添加头文件MathFuncsDll.h// MathFuncsDll.h#ifdef MATHFUNCSDLL_EXPORTS#define MATHFUNCSDLL_API __decls

2012-12-12 15:36:53 334

原创 模拟器和虚拟机的区别

简单点说就是模拟器可以在x86系统上模拟不同硬件平台的系统,如ARM,PowerPC,MIPS等,当然也支持x86。比较有名的模拟器有qemu(也可当虚拟机用)和Bochs。虚拟机只能在x86系统上模拟x86系统,虚拟系统执行的指令有一部分直接传到主机cpu,而且现在Intel和AMD的很多cpu都支持虚拟扩展,可以使虚拟机执行更快。一般地虚拟机的运行速度比模拟器要快很多。比较有名的虚拟机

2012-12-08 20:53:20 2974

原创 QEMU简单教程(不断更新中...)

QEMU是一个开源的虚拟机和模拟器,由法国天才程序员Fabrice Bellard  所开发,可以模拟不同的处理器架构(x86,server and embedded PowerPC, and S390 guests)。官网为 http://wiki.qemu.org/Main_PageKVM是构建在QEMU之上的虚拟机,其本身主要是一个Linux内核模块,只不过了整合了QEMU,目前受到

2012-12-02 10:50:21 7771

转载 asdfgasdg

" 在状态栏显示函数let g:ctags_statusline=1" 自动运行脚本ctagslet generate_tags=1" 将taglist显示在垂直窗口let Tlist_Use_Horiz_Window=0" 按功能键 F4 就可以切换到Taglistmap : TlistToggle" taglist的其他设置let Tlist_Use_Left_Window

2012-11-23 11:40:35 129

原创 Vim环境配置(For python)

下面展示怎么将Vim配置成Python IDE。需要的vim插件1. ctags 下载地址:http://ctags.sourceforge.net/首先解压,然后./configure,make,make install,编译后会生成可执行文件ctags,将其加入PATH。(ubuntu默认已安装或sudo apt-get install ctags)一般在要建立标签的目录下运行

2012-11-23 10:49:07 1915

转载 VirtualBox的四种网络连接方式

VirtualBox的提供了四种网络接入模式,它们分别是:1、NAT    网络地址转换模式(NAT,Network Address Translation)2、Bridged Adapter    桥接模式3、Internal    内部网络模式4、Host-only Adapter  主机模式下面我们分别对这四种网络模式进行分析解释:第一种 NA

2012-11-22 23:30:04 136

原创 TEMU和Vine的简单用法

TEMU的用法首先要创建一个虚拟的系统qemu-img create -f qcow2 /opt/kvm/winxp.img 10G 创建格式为qcow2大小为10G的虚拟磁盘文件sudo qemu-system-i386 -hda /opt/kvm/winxp.img -cdrom /opt/kvm/winxp_sp2.iso -boot d  根据镜像iso文件在winxp.img

2012-11-16 10:21:21 1860

原创 Bitblaze动态模块TEMU的安装

安装环境:ubuntu-11.10 安装过程tar zxvf temu-1.0.tar.gz 解压后会得到文件夹temu-1.0在该文件夹的docs目录下有文件install-temu-release.sh,里面提供了所有安装需要的命令如果安装qemu的命令不能用,可以网上搜搜。安装gcc-3.4的命令不可用,可以选择deb包安装(源码安装会折腾死人。。。)。从http

2012-11-16 08:53:48 1480 5

原创 Bitblaze静态模块Vine的安装

安装环境:ubuntu-11.10(该版本在VMware7.0下可以成功安装VMware tools,但ubuntu-12.04不行)安装过程:解压vine-1.0.tar.gz后进入文件vine-1.0,在其doc目录下有文件install-vine-release.sh,提供了所有安装命令,先是安装编译vine需要的各种软件,然后./configure和make(系统默认gcc

2012-11-16 08:38:09 998

PC游戏编程(人机博弈)

书籍《PC游戏编程.人机博弈》非常实用的书籍,对照源码可以快速掌握棋类游戏的开发和熟悉相应的人工智能算法。书籍是ceb格式,附带ceb阅读器。

2012-12-10

Essential_C++随书源码

《Essential C++》这本书的源码。新手对照着看可以学习作者的规范编程。

2012-12-10

五子棋和象棋人机博弈源码

书籍《PC游戏编程.人机博弈》所带的源码,用VC++6.0开发,非常实用,书籍也很有深度,人工智能应用于棋类的一些算法均有体现,如基本的搜索算法,经典的alpha-beta剪枝,模拟退火算法,遗传算法等。

2012-12-09

模式识别中的决策树程序

程序是自己写的,为了赚点积分,就上传了。

2010-09-05

C#版俄罗斯方块(附教程,保证可操作性)

自己对照教程动手写的简单俄罗斯方块程序,有原来版和改进版。

2010-09-05

空空如也

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

TA关注的人

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