randomize_va_space】的更多相关文章

自从数据库服务器从redhat4.6升级到redhat5.5之后,在使用TSM备份的时候偶尔会出现SQL2043N  查看错误: [db2inst1@limt ~]$ db2 ? SQL2043N SQL2043N Unable to start a child process or thread. Explanation: Unable to start up the child processes or threads required during the processing of a…
proc/sys/kernel/randomize_va_space用于控制Linux下 内存地址随机化机制(address space layout randomization),有以下三种情况 0 - 表示关闭进程地址空间随机化. 1 - 表示将mmap的基址,stack和vdso页面随机化. 2 - 表示在1的基础上增加栈(heap)的随机化.…
APP漏洞扫描用地址空间随机化 前言 我们在前文<APP漏洞扫描器之本地拒绝服务检测详解>了解到阿里聚安全漏洞扫描器有一项静态分析加动态模糊测试的方法来检测的功能,并详细的介绍了它在针对本地拒绝服务的检测方法. 同时,阿里聚漏洞扫描器有一个检测项叫未使用地址空间随机化技术, 该检测项会分析APP中包含的ELF文件判断它们是否使用了该项技术.如果APP中存在该项漏洞则会降低缓冲区溢出攻击的门槛. 本文主要介绍该项技术的原理和扫描器的检测方法.由于PIE的实现细节较复杂,本文只是介绍了大致的原理.…
缓冲区溢出漏洞实验 本课程详细出自http://www.shiyanlou.com/courses/231,转载请注明出处. 一.实验描述 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况.这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段.这一漏洞的出现是由于数据缓冲器和返回地址的暂时关闭,溢出会引起返回地址被重写. 二.实验准备 本次实验为了方便观察汇编语句,我们需要在32位环境下作操作,因此实验之前需要做一些准备. 1.输入命令安装一些用于编译32位C程序的…
1 fg切换前后台作业 将后台作业转换为前台作业,”fg %作业号“ 2 stty改变和打印终端行设置 tostop 阻止后台作业写终端,stty -a显示终端的所有选项 3 uname查看机子信息 uname -a 查看全部信息 4 查看程序依赖的动态链接库 ldd 程序名 5 gcc命令行 参考:http://blog.csdn.net/ruixj/article/details/1693953 “-XLinker -rpath” ./ 表示链接器在当前路径寻址共享对象,否则链接器会报错 “…
监控作业发现一台服务器(Red Hat Enterprise Linux Server release 5.7)从凌晨1:32开始,有一小段时间无法响应,数据库也连接不上,后面又正常了.早上检查了监听日志,并没有发现错误信息.但是检查告警日志,发现有下面错误信息: Thread 1 advanced to log sequence 19749 (LGWR switch)   Current log# 2 seq# 19749 mem# 0: /u01/oradata/epps/redo02.lo…
内核参数配置: kernel.shmall=<物理内存的90%,以页为单位> kernel.shmax=<实际的物理内存> kernel.shmmni= kernel.msgmax= kernel.msgmnb= kernel.msgmni= kernel.sem= *<RAM大小,以GB计> kernel.randomize_va_space= vm.swappiness= 如上内容添加到/etc/sysctl.conf执行sysctl -a 用户资源配置:对实例用户…
缓冲区溢出漏洞实验 缓冲区溢出漏洞:缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况.这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段.这一漏洞的出现是由于数据缓冲器和返回地址的暂时关闭,溢出会引起返回地址被重写. 输入命令安装一些用于编译32位C程序的东西: sudo apt-get update sudo apt-get install lib32z1 libc6-dev-i386 sudo apt-get install lib32readline-gpl…
Linux内核参数 http://space.itpub.net/17283404/viewspace-694350 net.ipv4.tcp_syncookies = 1 表示开启SYN Cookies.当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭:什么是SYN Cookies:http://www.ibm.com/developerworks/cn/linux/l-syncookie/ net.ipv4.tcp_tw_reuse = 1 表示…
1.一些常识 linux下,要读取一个文件,首先需要具有对文件所在文件夹的执行权限,然后需要对文件的读取权限. php文件的执行不需要文件的执行权限,只需要nginx和php-fpm运行账户的读取权限. 上传木马后,能不能列出一个文件夹的内容,跟php-fpm的运行账户对文件夹的读取权限有关,木马执行命令的权限跟php-fpm的账户权限有关. 如果木马要执行命令,需要php-fpm的账户对相应的sh有执行权限. 读取一个文件夹内的文件,是不需要对文件夹有读取权限的,只需要对文件夹有执行权限. 1…
Linux强化论:15步打造一个安全的Linux服务器 Alpha_h4ck2016-11-30共28761人围观 ,发现 8 个不明物体专题系统安全 可能大多数人都觉得Linux是安全的吧?但我要告诉你,这种想法绝对是错误的!假设你的笔记本电脑在没有增强安全保护的情况下被盗了,小偷首先就会尝试用"root"(用户名)和"toor"(密码)来登录你的电脑,因为这是KaliLinux的默认用户名和密码,而大多数人仍然会继续使用它们.你是否也是这样?我希望你不是! 在这…
目录 . 简介 . 进程虚拟地址空间 . 内存映射的原理 . 数据结构 . 对区域的操作 . 地址空间 . 内存映射 . 反向映射 .堆的管理 . 缺页异常的处理 . 用户空间缺页异常的校正 . 内核缺页异常 . 在内核和用户空间之间复制数据 1. 简介 用户层进程的虚拟地址空间是Linux的一个重要抽象,它向每个运行进程提供了同样的系统视图,这使得多个进程可以同时运行,而不会干扰到其他进程内存中的内容,此外,它容许使用各种高级的程序设计技术,如内存映射,学习虚拟内存,同样需要考察可用物理内存中…
Catalog . Linux attack vector . Grsecurity/PaX . Hardened toolchain . Default addition of the Stack Smashing Protector (SSP): Compiler Flag: GS . Automatic generation of Position Independent Executables (PIEs): System Characteristic + Compiler Flag:…
在Linux中,给kernel传递参数以控制其行为总共有三种方法: 1.build kernel之时的各个configuration选项. 2.当kernel启动之时,可以参数在kernel被GRUB或LILO等启动程序调用之时传递给kernel. 3.在kernel运行时,修改/proc或/sys目录下的文件. 这里我简单讲的就是第二种方式了,kernel在grub中配置的启动参数. 首先,kernel有哪些参数呢? 在linux的源代码中,有这样的一个文档Documentation/kern…
#11.配置iptables和TCPWrappers.   iptables 是一个Linux内核提供的,运行在用户空间的程序,它允许用户配置自己的防火墙策略.我们可以使用防火墙将不必要的流量过滤出去.使用 iptables 能够避免很多拒绝服务(DoS)攻击.   #12.内核配置文件优化(/etc/sysctl.conf).   /etc/sysctl.conf 文件用来修改服务器的运行时内核参数配置.Linux在启动时从配置文件中读取相关配置,一般内容如下:   # Turn on exe…
只为记录和整理在AWS上假设VPN服务器帮助过我的资料,环境使用AWS EC2 东京区域, OS为ubuntu, PPTP和L2TP各自建立一个, 从speed test上看, 下载有2mbps左右,上传则作为1mbps左右. ps: 原本aws 免费的vm到期, 就在双11的时候购买了阿里云新加坡的vm,结果发现这是一个失败的决定,钱是小事,主要是时间被浪费了很多, 切换回aws,一切都很顺利. 1, AWS 上架设 PPTP: 这个比较简单, 主要参考有: http://blog.banba…
首先我们先来看android构架图: android系统是构建在linux系统上面的. 所以android设备启动经历3个过程. Boot Loader,Linux Kernel & Android 系统服务. 1.基本启动过程 系统引导bootloader 加载boot.img 由bootloader 加载内核kernel 文件系统挂载,init 完成引导进程(文件解析.属性设置.启动服务.执行动作) 重要的服务进程zygote 建立Java Runtime,建立虚拟机 启动Android S…
一.关闭SELinux 安全增强型Linux(SELinux)的是一个Linux内核的功能,它提供支持访问控制的安全政策保护机制. 但是,SELinux带来的附加安全性和使用复杂性上不成比例,性价比不高 sed -i /SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config /usr/sbin/sestatus -v #查看状态 二.通过分区挂载允许最少特权 服务器上 nginx 目录单独分区.例如,新建一个分区/dev/sda5(第一逻辑…
Buffer lab   缓冲区溢出攻击的原理 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况.这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段.这一漏洞的出现是由于数据缓冲器和返回地址的暂时关闭,溢出会引起返回地址被重写.从逻辑上讲进程的堆栈是由多个堆栈帧构成的,其中每个堆栈帧都对应一个函数调用.当函数调用发生时,新的堆栈帧被压入堆栈:当函数返回时,相应的堆栈帧从堆栈中弹出.尽管堆栈帧结构的引入为在高级语言中实现函数或过程这样的概念提供了直接的硬件支持,但是…
Nginx 是一个轻量级的,高性能的Web服务器以及反向代理和邮箱(IMAP/POP3)代理服务器.它运行在UNIX,GNU /linux,BSD 各种版本,Mac OS X,Solaris和Windows.根据调查统计,6%的网站使用Nginx Web服务器.Nginx是少数能处理C10K问题的服务器之一.跟传统的服务器不同,Nginx不依赖线程来处理请求.相反,它使用了更多的可扩展的事 件驱动(异步)架构.Nginx为一些高流量的网站提供动力,比如WordPress,人人网,腾讯,网易等.这…
Linux内核socket优化项 vi /etc/sysctl.confnet.core.netdev_max_backlog = 30000  每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目 net.core.somaxconn = 262144   用来限制监听(LISTEN)队列最大数据包的数量,超过这个数量就会导致链接超时或者触发重传机制 net.core.rmem_default = 8388608    接收套接字缓冲区大小的默认值(以字节为单…
# 工具篇 # pwntools ,gdb-peda ROPgadget-tool . EDB ## pwntools获取.安装和文档帮助 ## - pwntools: github可以搜索到 https://github.com/Gallopsled/pwntools - 安装 pwntools 依赖: (最好先apt-get update下)`$ apt-get install python2.7 python2.7-dev python-pip ` - 安装pwntools `$ pip…
苹果的验证机制: Appstore上的应用都採用了DRM(digital rights management)数字版权加密保护技术,直接的表现是A帐号购买的app,除A外的帐号无法使用,事实上就是有了数字签名验证,而app的破解过程,实质也是去除数字签名的过程.去除过程包含两部分,例如以下所看到的:        ipa文件都是使用苹果公司的FairPlay DRM技术进行加密保护 appsync没有装是不能安装的,程序没有破解是不能执行的 条件一,设备越狱,获得root权限,去除掉设备上的签名…
/proc/sys目录下存放着大多数内核参数,并且可以在系统运行时进行更改,不过重新启动机器就会失效./etc/sysctl.conf是一个允许改变正在运行中的Linux系统的接口,它包含一些TCP/IP堆栈和虚拟内存系统的高级选项,修改内核参数永久生效.也就是说/proc/sys下内核文件与配置文件sysctl.conf中变量存在着对应关系. 设置或重新设置联网功能: 如IP转发.IP碎片去除以及源路由检查.TCP/IP堆栈和虚拟内存 sysctl [-n] [-e] -w variable=…
Linux内核启动参数   Console Options                         参数 说明 选项 内核配置/文件   console=Options 用于说明输出设备 ttyn 终端 ttySn[,options], ttyUSB0[,options] 串口uart,io,addr[,options],uart,mmio,addr[,options]&<60;     netconsole=[src-port]@[src-ip]/[dev],[target-por…
Linux 启动参数介绍 取自2.6.18 kernel Documentation/i386/boot.txt 文件中介绍 vga= 这里的不是一个整数(在C语言表示法中,应是十进制,八进制或者十六进制其中之一),就是“normal”(0xFFFF),“ext”(0xFFFE),“ask”(0xFFFD)中的一个.这个值应被填入vid_mode(视频模式控制)域, 因为他会在命令行被解析前被内核使用. mem= 是用C语言表示法定义的整形,后面可以追加(大小写不敏感的)K,M,G,T,P或者E…
Return-to-libc 攻击实验 缓冲区溢出的常用攻击方法是用 shellcode 的地址来覆盖漏洞程序的返回地址,使得漏洞程序去执行存放在栈中 shellcode.为了阻止这种类型的攻击,一些操作系统使得系统管理员具有使栈不可执行的能力.这样的话,一旦程序执行存放在栈中的 shellcode 就会崩溃,从而阻止了攻击. 不幸的是上面的保护方式并不是完全有效的,现在存在一种缓冲区溢出的变体攻击,叫做 return-to-libc 攻击.这种攻击不需要一个栈可以执行,甚至不需要一个 shel…
http://blog.lifeibo.com/?p=380 1.sysctl sysctl命令被用于在内核运行时动态地修改内核的运行参数,可用的内核参数在目录/proc/sys中 [root@server1 ~]# cd /proc/sys[root@server1 sys]# ll总用量 0dr-xr-xr-x 0 root root 0 6月 5 20:59 abidr-xr-xr-x 0 root root 0 6月 5 20:59 cryptodr-xr-xr-x 0 root roo…
              内核模块:/lib/modules/version/kernel或/lib/modules/$(uname -r)/kernel; [root@localhost kernel]# cd /lib/modules/$(uname -r)/kernel [root@localhost kernel]# ll total drwxr-xr-x root root Sep arch drwxr-xr-x root root Sep crypto drwxr-xr-x roo…
这是CSAPP官网上的著名实验,通过注入汇编代码实现堆栈溢出攻击.实验材料可到我的github仓库 https://github.com/Cheukyin/CSAPP-LAB/ 选择buffer-overflow分支下载 linux默认开启ASLR,每次加载程序,变量地址都会不一样,所以若要关闭ASLR: sysctl -w kernel.randomize_va_space=0(赋值为2,即可打开ASLR) 不过本实验的程序似乎经过特殊处理,不需要关闭ASLR 正常编译的程序的stack是no…