DLL调试 之 当前不会命中断点,还没有为该文档加载任何符号

2013年4月5日 没有评论

最近在Visual Studio中调试DLL的时候,老是提示“当前不会命中断点,还没有为该文档加载任何符号”,在写代码写到快要发疯的时候遇到这样的事情,还有比这更糟糕的么?
网上那些乱七八糟的解决方案全然无效,比如删除工程目录下ncb文件之类的,或者配置选项确保生成调试符号之类的,都不是我想要的。后来,是这么解决问题的(其实以前就这么玩过,只是记得不太清楚了):
1. 需要自己弄一个Loader(比如自己写个EXE),这个Loader可以加载要调试的DLL;
2. 在DLL需要下断点的地方加一个[……]

继续阅读

调试器也有MagicNumer——从一个奇葩的错误说起

2013年3月16日 17 条评论

最近太忙,博客也好久没有打理了,主要是没有东西可写,呵呵~
写代码的时候,在delete的时候遇到一个错误,提示“T.exe 中的 0x002a1614 处未处理的异常: 0xC0000005: 读取位置 0xfeeefeee 时发生访问冲突”,立刻就被其中的0xFEEEFEEE吸引住了,显然,这样的地址在用户空间(User Space)是不可能用到的,刚好前不久看到一条微博说调试器也有Magic Number,利用16进制构造出一些很有意思的数据,于是马上Google了一下0xFEEEFEEE[……]

继续阅读

const成员函数重载-error C2678 二进制< 没有找到接受const类型的左操作数的运算符

2013年3月5日 3 条评论

最近遇到的一个错误,重载类的小于比较操作符,然后通过algorithm中的sort对其进行排序时提示了一个编译错误:
1>—— 已启动生成: 项目: T, 配置: Debug Win32 ——
1>正在编译…
1>Main.cpp
1>e:\code\X\t\t\main.cpp(34) : warning C4996: ‘freopen’: This function or variable may be unsafe[……]

继续阅读

分类: C++编程 标签: ,

HqBaiduMusic百度音乐高品质下载Chrome扩展

2013年2月24日 4 条评论

百度音乐刚出来的时候是可以直接下载320Kbps的高品质音乐的,不过现在为了推广他的手机客户端,不让下载了:“您可以将 超高品质(320kbps mp3)保存到 云音乐空间 或通过 百度音乐手机客户端 获取”,PC端居然不给下载。但是呢?查看下源代码发现链接还是存在的,但每次下歌也懒得查看源代码再做一些字符替换之类的,于是,无聊写了个Chrome插件,用来下载百度音乐的高品质MP3(320Kbps的)。其实Chrome插件开发感觉可以,基本上就是写Javascript脚本。
条款: 

  • 本插件仅[……]

继续阅读

Boost编译与配置

2013年1月21日 6 条评论

老文章,在草稿箱存了一年多了)Boost是一个开源、可移植的强大的C++程序库,由C++标准委员会库工作组成员发起。官方网址为http://www.boost.org,SourceForge网址为http://sourceforge.net/projects/boost/。本文以Windows下Visual Studio为例讲解如何编译和配置Boost库。
首先从SourceForge上下载Boost库的压缩包,此时的最新版为1.47.0,下载地址为http://nchc.dl.sourcef[……]

继续阅读

分类: C++编程 标签: ,

C++ Template Non-type Parameter

2013年1月5日 没有评论

C++的template可以传入普通的参数,像给普通函数传入参数一样。可能平时并不多见,但这是完全可以的,因为好久没看这方面的东西,对这样的写法表示大为吃惊。也难怪,笔记本散热不好,《Effective C++》被我拿来垫笔记本了,而《More Effective C++》一直放在枕头旁边……翻了一下,书上都有提及这样的写法。

Besides the template arguments that are preceded by the class or typename keywords , which represent types, templates can also have regular typed parameters, similar to those found in functions. As an example, have a look at this class template that is used to contain sequences of elements:

It is also possible to set default values or types for class template parameters.(设置参数的默认值也是可以的。)[……]

分类: C/C++ 标签: , , ,

[CVE-2012-4792]IE 0DAY – CDwnBindInfo Object Use-After-Free Vulnerability

2012年12月30日 没有评论

年末新一波IE0day来袭。国外安全公司报道捕获了一个新的IE 0DAY攻击,该IE 0DAY攻击确认影响全补丁的IE8,可能影响其他版本的IE。IE用户请先使用Google Chrome、Firefox等非IE浏览器,避免潜在的威胁。也可安装腾讯电脑管家,可有效拦截浏览器堆喷射HeapSpray)攻击代码。
Metasploit已经发布exploit利用模块,用户可以“Framework Update”更新批处理(C:\metasploit\dev_msfupdate.bat)获取名为ie_[……]

继续阅读

实战HeapSpray之CVE2012-1889 Exploit编写(三)

2012年12月29日 3 条评论

接前面两篇文章《实战HeapSpray之CVE2012-1889 Exploit编写(一)》,《实战HeapSpray之CVE2012-1889 Exploit编写(二)》,本文讲介绍IE8下HeapSpray注意点以及XP下IE8 Exploit开发过程。
ROP技术简介
溢出攻击的根源在于现代计算机对数据和代码没有明确的区分这一先天缺陷,而DEP(数据执行保护,Data Execution Prevention)就是用来弥补计算机对数据和代码混淆这一天然缺陷的。DEP的基本原理是将数据所在的[……]

继续阅读

实战HeapSpray之CVE2012-1889 Exploit编写(二)

2012年12月11日 3 条评论

接上一篇文章《实战HeapSpray之CVE2012-1889 Exploit编写(一)》,本文讲介绍HeapSpray技术以及XP下IE6 / IE7 Exploit开发过程。
HeapSpray技术介绍
HeapSpray即堆喷射,本身并不是一门新的利用技术,最早的文档是由Skylined在很久之前记录的。通过Wikipedia可以知道最早使用HeapSpray技术是在2001年(MS01-033)。2004年,Skylined在IE的IFrame漏洞(MS04-040)利用程序中使用到这种[……]

继续阅读

实战HeapSpray之CVE2012-1889 Exploit编写(一)

2012年12月9日 2 条评论

业余花了点时间学习了堆喷射技术,集合自己的分析,还是决定发到博客上来分享一下,我会尽可能详细的描述整个过程(同时,由于细节描述的多,文章无法写成一篇),整个过程基于CVE2012-1889(MS12-043)进行,边学边写Exploit,最终完成XP下IE6 / IE7 / IE8下Exploit的开发(如有可能,将进一步编写Win7下的Exploit),中间会涉及到堆喷射的介绍、ROP绕过DEP、精确堆喷射,注意我们不关心漏洞本身的细节。
文章的编写参考了网上许多文章,在此先表示感谢,链接会在[……]

继续阅读