写了一个小工具,使用System.out.printf()输出日志,以方便使用者查看,在终端显示没有问题,但重定向到文件就有问题了,会出现一些很奇怪的乱序现象。 上网查询资料,判断应该是跟重定向和Linux缓冲区有关,标准输出为行缓冲,文件为全缓冲,可以使用 stdbuf -oL [command] ...
分类:
其他好文 时间:
2019-01-30 15:52:10
阅读次数:
156
缓冲区溢出攻防研究 Linux 缓冲区溢出 原理 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况。这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段。这一漏洞的出现是由于数据缓冲器和返回地址的暂时关闭,溢出会引起返回地址被重写。 实践(实验楼环境下) 系统用户名sh ...
分类:
其他好文 时间:
2018-05-13 13:35:25
阅读次数:
146
一、概念介绍linux系统中通常使用free命令来查看内存使用情况,free命令主要是从/proc/meminfo文件中读取的内存数据然后进行简单处理进行展示,根据查看free命令的手册了解到各个字段的含义。total:系统总内存大小(分物理内存mem、交换分区swap)used:已使用的内存(total-f..
分类:
系统相关 时间:
2017-05-12 13:40:00
阅读次数:
208
相信很多在linux平台工作的童鞋,都很熟悉管道符‘|‘,通过它,我们能够很灵活的将几种不同的命令协同起来完成一件任务。就好像下面的命令:不过这次咱们不来说这些用法,而是来探讨一些更加有意思的,那就是管道两边的数据流"实时性"和管道使用的小提示。其实我们在利用管道的时候,可..
分类:
系统相关 时间:
2017-04-07 11:15:34
阅读次数:
147
Linux命令是我们使用和维护linux操作系统的基本技能,当你熟练的掌握了基本命令后,才能高效、快捷的完成任务,以下命令是自己总结的常用命令,主要用来自己回顾和总结,同时也分享给诸位热爱Linux操作系统的朋友。free命令可以显示当前系统未使用的和已使用的内存数目,还可以..
分类:
系统相关 时间:
2016-07-25 00:21:44
阅读次数:
227
相信大家在初步学习C/C++的时候都写过“helloworld”的代码。在学习了C/C++之后进入Linux系统的学习我们不用再从“helloworld”这种入门级程序开始了,毕竟已经有了几年的小经验,但是重新开始在一个新的系统下编写代码,特别是对于Linux中庞杂的指令是需要一个熟悉与练习的过..
分类:
系统相关 时间:
2016-06-06 01:23:51
阅读次数:
215
这次缓冲区溢出实验是在实验楼上finish的。关于步骤的问题,就不说了,给一个实验步骤的地址。在这次缓冲区溢出的实验中,出现了以下问题:如何知道操作系统是32位的还是64位的?当使用地址空间随机化来分配堆和栈的初始地址时,应该如何猜解内存地址?Linux系统在缓冲区溢出和..
分类:
其他好文 时间:
2016-05-13 15:31:14
阅读次数:
158
这次缓冲区溢出是在实验楼上finish的。关于步骤的问题,就不说了,给一个实验步骤的地址。在这次缓冲区溢出的实验中,出现了以下问题:如何知道操作系统是32位的还是64位的?当使用地址空间随机化来分配堆和栈的初始地址时,应该如何猜解内存地址?Linux系统在缓冲区溢出和其它..
分类:
其他好文 时间:
2016-05-03 00:44:33
阅读次数:
183
接上一篇:浅谈栈帧(一)上一篇我们简单说了一下关于堆栈与栈帧调用函数是如何调用的,堆栈中的数据是如何存储在内存中的,用了几个简单的实例去观察分析他。这篇,我们从根本来思考一下堆栈这种东西:其实在计算机的早期,电脑的内存是用是十分老实的,没错就是老实。他没有..
分类:
其他好文 时间:
2016-04-01 16:15:49
阅读次数:
274
在Linux下编写一下代码:
#include
#include
char Lbuffer[] = "01234567890123456789========ABCD";
void foo()
{
char buff[16];
strcpy (buff, Lbuffer);
}
int main(int argc, char * argv[])
{
foo();...
分类:
其他好文 时间:
2015-04-07 19:40:53
阅读次数:
128