![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
文章类
文章平均质量分 80
ThomasLiu83
隐身看世界!Raise your hands!
展开
-
高质量C++编程点滴(1)
有效解决内存泄露一、你需要一个函数将一个数组赋值为等差数列,并将会在函数的外部使用它。 不合理:int *GetArray( int n ){ int *p = new int[n]; for ( int i = 0; i { p[i] = i; }转载 2004-12-20 16:38:00 · 771 阅读 · 0 评论 -
Linux内核裁减及根文件系统定制(之二)--------根文件系统定制
Linux内核裁减及根文件系统定制(之二)--------根文件系统定制二、根文件系统定制 1、 创建一个全新的根文件系统 你可以用mkinitrd来创建,这里介绍另外一种方式,用dd命令: # mkdir -p /mnt/initrd 创建一个设备点,用于临时挂载根文件系统。 # cd转载 2005-12-16 23:41:00 · 3874 阅读 · 0 评论 -
dll 反汇编
前段时间在CSDN上有位网友问过一个问题。如何在WINDOWS下使删除文件、复制文件、变更文件名失效呢? 有一个办法,就是通过拦截系统的I/O中断,可以实现此操作。但是因为网友只是问如何在WINDOWS下失效,那我们也可以试着拦截API函数。众所周知,在WINDOWS下的文件操作一般是通过调用WINAPI函数实现的,再由WINAPI函数调用系统的I/O中断实现最终的文件操作。如果我们在系统调用W转载 2006-03-08 00:06:00 · 1799 阅读 · 0 评论 -
高级语言反汇编程序的函数调用过程
摘要:本文说明高级语言编译成汇编语言后,高级语言中函数调用的汇编程序过程。正文:高级语言编译成汇编程序以后,在高级语言中的函数调用的汇编程序过程如下:1.将函数参数入栈,第一个参数在栈顶,最后一个参数在栈底。2.执行CALL指令,调用该函数,进入该函数代码空间。a.执行CALL指令,将CALL指令下一行代码的地址入栈。b.进入函数代码空间后,将基址指针EBP入栈,然后让基址指针EBP指向当前堆栈栈转载 2006-03-08 00:22:00 · 681 阅读 · 0 评论 -
vi编辑器使用命令图解
转载 2006-01-20 22:37:00 · 894 阅读 · 0 评论 -
内核反汇编技术
内核反汇编技术=============================== Усыпляющее шептание алых просторов Сон зовет меня и мои мечты освобождены Оставленная мной действи转载 2006-03-08 00:11:00 · 908 阅读 · 0 评论 -
Windows下程序的反汇编
下编写的程序经编译链接之后,就可用debug等调试工具调试执行,也能看到反汇编的结果,这很便于理解“汇编指令”是如何翻译成“机器指令”的。对Windows程序,这样的工具有很多,像SoftICE、TRW、W32dasm、IDA、Hiew等。这里准备谈一下W32dasm。 ;===========================================================转载 2006-03-08 00:14:00 · 1303 阅读 · 0 评论 -
红色代码分析报告
我们从两名网络管理员那里得知,他们管理的网络受到了大量数据包的攻击,攻击目标就是.ida网络漏洞。在查看了他们提供的系统日志之后,我们认定是有人在Internet上扩散了一种新型蠕虫,这种蠕虫可以快速地通过IIS web服务器得以在网络上扩散。 对.ida“红色代码”蠕虫的完整分析详尽地说明了这种蠕虫的功能和复制方式等众多细节。例如,这种蠕虫的最终目的似乎是对www.whitehouse.gov发转载 2006-03-08 00:24:00 · 1278 阅读 · 0 评论 -
软件漏洞及缓冲区溢出
本文是我做溢出的一点心得,希望大家提出宝贵的修改意见,也希望对大家有一定的帮助:)软件漏洞及缓冲区溢出一、 缓冲区溢出的发展简史1、 基础知识(1) 汇编语言(2) 反汇编原理及Intel机器指令编码体系(3) 调试器原理(4) 异常处理(SEH)(5) 调试技术(6) Windows API 开发2、 软件漏洞分类逻辑漏洞:如条件竟争。编码漏洞:如缓冲区溢出漏洞,格式化字符串漏洞等3、 缓冲区溢转载 2006-03-08 00:37:00 · 1186 阅读 · 0 评论 -
DLL中调用约定和名称修饰(一)
用约定(Calling Convention)是指在程序设计语言中为了实现函数调用而建立的一种协议。这种协议规定了该语言的函数中的参数传送方式、参数是否可变和由谁来处理堆栈等问题。不同的语言定义了不同的调用约定。 在C++中,为了允许操作符重载和函数重载,C++编译器往往按照某种规则改写每一个入口点的符号名,以便允许同一个名字(具有不同的参数类型或者是不同的作用域)有多个用法,而不会打破现转载 2006-03-08 00:30:00 · 710 阅读 · 0 评论 -
DLL中调用约定和名称修饰(二)
4、thiscallthiscall调用约定是C++中的非静态类成员函数的默认调用约定。thiscall只能被编译器使用,没有相应的关键字,因此不能被程序员指定。采用thiscall约定时,函数参数按照从右到左的顺序入栈,被调用的函数在返回前清理传送参数的栈,只是另外通过ECX寄存器传送一个额外的参数:this指针。 这次的例子中将定义一个类,并在类中定义一个成员函数,代码如下:转载 2006-03-08 00:32:00 · 808 阅读 · 0 评论 -
漏洞研究方法总结
文章作者:yange一、前期准备,建立安全模型; 1、熟悉软件功能、功能实现,配置等; 如:IIS的虚拟目录、脚本映射; 2、根据功能,分析安全需求,建立安全模型; IIS外挂,文件类型识别,目录正确识别;目录限制; 外挂的特点;权限不是在文件对象上,需要自己识别文件,所以需要识别出同一个文件的所有文件名; 3、根据安全需求,分析编程应注意的地方,重点检查。 IIS要转载 2006-03-08 00:25:00 · 973 阅读 · 0 评论 -
信息安全的隐患-GoogleHacking原理和防范
2004年在拉斯维加斯举行的BlackHat大会上,有两位安全专家分别作了名为You found that on google ? 和google attacks 的主题演讲。经过安全焦点论坛原版主WLJ大哥翻译整理后,个人觉得有必要补充完善一些细节部分。今天向大家讲述的是Google的又一功能:利用搜索引擎快速查找存在脆弱性的主机以及包含敏感数据的信息,甚至可以直接进行傻瓜入侵。用google来转载 2006-03-08 00:43:00 · 1274 阅读 · 0 评论 -
Linux 汇编语言开发指南
北京理工大学计算机系硕士研究生, 2003 年 7 月 03 日汇编语言的优点是速度快,可以直接对硬件进行操作,这对诸如图形处理等关键应用是非常重要的。Linux 是一个用 C 语言开发的操作系统,这使得很多程序员开始忘记在 Linux 中还可以直接使用汇编这一底层语言来优化程序的性能。本文为那些在Linux 平台上编写汇编代码的程序员提供指南,介绍 Linux 汇编语言的语法格式和开发工具,并辅转载 2006-03-08 12:57:00 · 885 阅读 · 0 评论 -
Linux内核裁减及根文件系统定制(之一)--------Linux内核裁减
Linux内核裁减及根文件系统定制(之一)--------Linux内核裁减目录:一、内核编译二、根文件系统定制三、内核选项说明 一、内核编译1、 准备工作(1) 整理出系统需要支持的硬件、文件系统类型以及网络协议等内容。(2) 建议用命令uname –r 查看一下系统的版本号,如果你的系统版本与将要编译的内核版本一致,建议将/li转载 2005-12-16 23:40:00 · 4566 阅读 · 1 评论 -
办公室30句经典赞美(中英)(ZT)
1.you look great today.(你今天看上去很棒。)「每天都可以用!」 2. you did a good job. (你干得非常好。)「国际最通用的表扬!」 3. we‘re so proud of you.(我们十分为你骄傲。)「最高级的表扬!」 4. i‘m very pleased with your work.(我对你的工作非常满意。)「正式、真诚的转载 2005-12-16 23:20:00 · 806 阅读 · 0 评论 -
对Google更新过程的最终解释
Google是如何更新全部索引的?这是一个范围相当宽的问题,大家都知道,Google为确保向用户提供最具相关性和质量最高的搜索结果而对其数据库按月进行更新。为了回答上述问题,在本文中我将向大家详细说明Google更新过程的每个步骤。 有相当多的用户和公司都已经发现,为了在早期的搜索引擎优化中,能在Google里有个很好的排名,在认真做计划之前就要采取一切必要的措施。就免费提交的搜索引擎来说,转载 2005-12-16 22:52:00 · 634 阅读 · 0 评论 -
编译器处理相关
一.预处理器-编译器-汇编器-链接器预处理器会处理相关的预处理指令,一般是以"#"开头的指令。如:#include "xx.h" #define等。编译器把对应的*.cpp翻译成*.s文件(汇编语言)。汇编器则处理*.s生成对应的*.o文件(obj目标文件)最后链接器把所有的*.o文件链接成一个可执行文件(?.exe)1.部件:首先要知道部件(可以暂且狭义地理解为一个类)一般分为头文件(我喜欢称为转载 2004-12-23 12:14:00 · 789 阅读 · 0 评论 -
浅谈内存泄漏(2)
检测内存泄漏: 检测内存泄漏的关键是要能截获住对分配内存和释放内存的函数的调用。截获住这两个函数,我们就能跟踪每一块内存的生命周期,比如,每当成功的分配一块内存后,就把它的指针加入一个全局的list中;每当释放一块内存,再把它的指针从list中删除。这样,当程序结束的时候,list中剩余的指针就是指向那些没有被释放的内存。这里只是简单的描述了检测内存泄漏的基本原理,详细的算法可以参见Steve转载 2004-12-20 16:25:00 · 751 阅读 · 0 评论 -
浅谈内存泄漏(3)
使用BoundsChecker检测内存泄漏: BoundsChecker采用一种被称为 Code Injection的技术,来截获对分配内存和释放内存的函数的调用。简单地说,当你的程序开始运行时,BoundsChecker的DLL被自动载入进程的地址空间(这可以通过system-level的Hook实现),然后它会修改进程中对内存分配和释放的函数调用,让这些调用首先转入它的代码,然后再执行原来的转载 2004-12-20 16:32:00 · 775 阅读 · 0 评论 -
The Linux GCC HOWTO中译版V0.2
2. 东东在哪儿?2.1 GCC-HOWTO在哪儿? 这份文件是Linux HOWTO系列之一,换句话说,你可以在所有存放Linux HOWTO文件的网站上面找到她的芳踪,例如 http://sunsite.unc.edu/pub/linux/docs/HOWTO/。HTML的版本(可能会是较新的版本)可以从 http://ftp.linux.org.uk/~barlow/howto/gc转载 2004-12-23 11:55:00 · 1616 阅读 · 0 评论 -
vc++学习精髓(收集,整理)
以下是很多VC爱好者的学习经历,希望对大家有所帮助: 我记得我在网上是这么说的:先学win32的SDK,也就是API, 再学MFC,这么一来呢,就先有个基础,MFC是API的封装, 如果API用的熟了,MFC上手就轻松的多了。 我觉得呢,现在不少WINDOWS编程入门的好书很多,多买一些,多看看,多想想。不要心浮气躁。我的经验就是一边看书,一边写程序,看看是不是书上说的那样。看书看明白了不行,自己转载 2004-12-23 12:36:00 · 806 阅读 · 0 评论 -
GCC User Guide
1.前言 GCC编译器的手册(GCC MANUAL)的英文版已经非常全面,并且结构也非常完善了,只是 一直都没有中文的版本,我这次阅读了GCC编译器的主要内容,对手册的内容进行了结构性 的了解,认为有必要对这次阅读的内容进行整理,为以后的工作做准备。 由于我对这个英文手册的阅读也仅仅是结构性的。因此有很多地方并没有看,所以这 篇文档的内容我也只能写出部分,对于以后需要详细了解的地方转载 2004-12-23 12:00:00 · 1228 阅读 · 0 评论 -
女生写的如何追mm.看完后嫩头青变高手 (看到一篇很好的收藏了)
转载自猫扑论坛 我是女生,看到有的男生想追自己喜欢的女孩子又不敢追,还想人家倒追她,我很反感. 从一个女生的角度,我比较了解女孩子的心理。女孩子大多不会主动出击,去追求自己喜欢的男孩,除了确实太喜欢了或者是那种比较有个性的勇敢的女孩子。所以,如果你很喜欢一个女孩子,并且认为她对你也有点意思,那就主动点,别跟她搞拉锯战,自己难受,说不定你喜欢的人也痛苦。转载 2005-06-23 19:15:00 · 1163 阅读 · 0 评论 -
C++中的文件操作
在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O,stream这个类有两个重要的运算符:1、插入器( 向流输出数据。比如说系统有一个默认的标准输出流(cout),一般情况下就是指的显示器,所以,cout2、析取器(>>) 从流中输入数据。比如说系统有一个默认的标准输入流(cin),一般情况下就是指的键盘,所以,cin>>x;就表示从标准输入转载 2005-06-23 19:08:00 · 732 阅读 · 0 评论 -
基于C的文件操作
在ANSI C中,对文件的操作分为两种方式,即流式文件操作和I/O文件操作,下面就分别介绍之。一、流式文件操作 这种方式的文件操作有一个重要的结构FILE,FILE在stdio.h中定义如下:typedef struct {int level; /* fill/empty level of buffer */unsigned flags; /* File status flags */char转载 2005-06-23 19:19:00 · 940 阅读 · 0 评论 -
深入分析 Linux 内核链表(转)
深入分析 Linux 内核链表(转) (原文出自: http://www-128.ibm.com/developerworks/cn/linux/kernel/l-chain/index.html)杨沙洲国防科技大学计算机学院2004 年 8 月 本文详细分析了 2.6.x 内核中链表结构的实现,并通过实例对每个链表操作接口进行了详尽的讲解。一、 链表数据结构简介链表是一种常用的组织有序数转载 2005-12-16 23:26:00 · 1527 阅读 · 0 评论 -
google搜索原理论文 (英文版)
The Anatomy of a Large-Scale Hypertextual Web Search EngineSergey Brin and Lawrence Page{sergey, page}@cs.stanford.eduComputer Science Department, Stanford University, Stanford, CA 94305Abstract转载 2005-12-16 23:02:00 · 1694 阅读 · 0 评论 -
google网络搜索技术
这篇文章中,我们介绍了google,它是一个大型的搜索引擎(of a large-scale search engine)的原型,搜索引擎在超文本中应用广泛。Google的设计能够高效地抓网页并建立索引,它的查询结果比其它现有系统都高明。这个原型的全文和超连接的数据库至少包含24000000个网页。我们可以从http://google.stanford.edu/ 下载。 设计搜索引擎是一项转载 2005-12-16 22:46:00 · 1023 阅读 · 0 评论