- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 【bash】倒转一个字符串列表
<br />前有一个字符串str_list="one two three", 现在想将这个字符串列表翻转下,变为rev_str_list="three two one"。可以使用bash shell的数组特性完成。<br /> <br />代码如下:<br /> <br />reverse_list()<br />{<br /> local array=( $str_list ) # 构建一个数组<br /> let " arr_count = ${#
2011-04-17 22:00:00
625
转载 【转帖】一种新的Heap区溢出技术分析
通常的Heap区溢出只能利用覆盖某些函数指针,jumpbuf或者重要变量等方式来完成攻击。如果系统中没有这些条件,尽管能够发生溢出,攻击者仍然很难执行自己的代码。这里介绍一种利用malloc/realloc/free来进行攻击的方法。这种方法使得Heap攻击的可能性大大增加了。
2011-03-08 22:54:00
1198
转载 【转帖】Heap/BSS 溢出机理分析
堆栈溢出的问题已经广为人知,越来越多的操作系统商家增加了不可执行堆栈的补丁,一些个人也提供了自己的补丁,象著名的Solar Designer提供的针对Linux的不可执行堆栈的kernel patch(目前已经推出了用于2.2.13内核的patch),也有一些人开发了一些编译器来防止堆栈溢出,象Crispin Cowan等开发的StackGuard等等。这些方法都一定程度上可以减少由堆栈溢出导致的安全问题,但是并却不能防止Heap/BSS的溢出。在大多数的操作系统中,Heap和BSS段都是可写可执行的。这
2011-03-08 22:28:00
1167
原创 浅析系统的大小端模式
大端模式 所谓的大端模式,是指数据的低位(就是权值较小的后面那几位)保存在内存的高地址中,而数据的高位,保存在内存的低地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放; 小端模式 所谓的小端模式,是指数据的低位保存在内存的低地址中,而数 据的高位保存在内存的高地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低,和我们的逻辑方法一致。
2011-02-06 15:50:00
2866
1
转载 Linux Find 命令精通指南
Linux find 命令是所有 Linux 命令中最有用的一个,同时也是最混乱的一个。它很难,因为它的语法与其他 Linux 命令的标准语法不同。但是,它很强大,因为它允许您按文件名、文件类型、用户甚至是时间戳查找文件。使用 find 命令,您不但可以找到具这些属性任意组合的文件,还可以对它找到的文件执行操作。本文的目的是,通过概述 find 命令的用途和潜能,简化该命令的学习和使用。同时,它将针对 find 命令的某些最强大但最混乱的方面提供一个基本的指南和参考。
2011-02-02 15:47:00
319
原创 由float类型与0比较学习浮点型编码格式
IEEE浮点标准用V=(-1)^s * M * 2^E的形式来表示一个数:(1)符号(sign)s决定数是负数(s=1)还是正数(s=0),而对0的符号位作为特殊情况处理。(2)有效数(significant)M是一个二进制小数。(3)指数(exponent)E是2的幂(可能是负数),他的作用是对浮点数的加权。一个浮点数的位表示按上述情形划分为3个域。
2011-02-01 10:30:00
3190
翻译 K&R C的历史和特性
C程序设计语言最早是有Dennis M. Ritchie于1973年设计并实现的。当时与其合作者Ken Thompson重实现Unix操作系统而发明的。最初的Unix用汇编语言写成,应用程序用汇编语言和解释型语言B混合编写。B语言的优点在于小巧,能在PDP-7上运行,但是作为系统编程语言还不够强大,所以Dennis Ritchie给它增加了数据类型和结构。C语言从1971年自B语言进化而来,1973年Thompson和Ritchie成功地用新语言C重写了整个Unix系统。C语言也随着Unix系统逐
2011-01-29 22:01:00
749
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人