1.什么是字节对齐 已经有很多文章说过字节对齐的问题了,比如: http://zhangyu.blog.51cto.com/197148/673792/ http://blog.tianya.cn/blogger/post_show.asp?BlogID=597570&PostID=11394326 这里不再重复。总之,字节对齐是为了CPU能够更快的访问。   2.书本中的栈 在介绍函数调用的详细步骤时一定会提到一个概念–栈。在涉及到汇编时,下面这张图大家一定很熟悉...

https即http协议加上ssl协议,在使用https协议登入网站时浏览器会先生成请求,让服务器把自己的数字证书发送过来,验证通过后才能协商会话密钥进而安全的访问该站点。 1.模拟CA认证的全过程 对于一个服务器,要想实现https服务,首先要向CA申请数字证书。CA用私钥将服务器发来的申请签名后生成服务器的数字证书,用户(浏览器)想要访问https服务器,就得向服务器发送认证请求,接下...

shellcode中如果存在0x00,那么在拷贝字符串时shellcode很有可能在中间部分被割断,为了防止shellcode被破坏,通常要去除shellcode中的0x00。去0的方法有很多,这里介绍一些常用的方法: 1. 异或操作去0 mov $0x0,$eax ---> xorl $eax,$eax 1 mov $0x0,$eax  --->  xorl $eax,$e...

jdk1.7和jdk1.6在Android应用程序签名过程中有所不同。在官网中有详细说明:http://developer.android.com/tools/publishing/app-signing.html#setup   。下面具体的介绍jdk1.7下Android应用程序的签名过程。   1.签名使用工具 给Andorid程序签名主要使用到3个工具: keytool : 放在jdk安装目录/bin下 jarsigner : 放在jdk安装目录/bin下 zipalign : 放在android sdk目录bu...

在写栈溢出攻击shellcode时候,有时需要将字符串传递给某个函数或者直接使用,但是在栈中无法直接获取该字符串的地址。下面将介绍两种获取字符串地址的方法: 1.直接通过push来获取字符串的地址 Vim movl $0x65656565 ,%eax push %eax 12 movl $0x65656565 ,%eaxpush %eax 上面两句...

esp指向栈顶元素(非空) ebp始终指向上一个栈帧的ebp(所有的ebp组成了一个单链表) push完成两步操作 1. 将esp向低地址移动一格(给要入栈的元素留空位) 2. 将元素存入栈中 pop同样完成两步操作,但是顺序和push相反  1. 将栈顶元素弹出  2. 将esp向高地址移动一格 通过+x(%ebp)来访问传给被调函数的参数,通过-x(%ebp)来访问函数内部的局部变量 给函数分配栈空间时通常会先分配一片...

新装了里Ubuntu14的系统,在安装eclipse时出现eclipse最上面到菜单栏消失了,解决方法如下: 1. 新建一个eclipse.sh文件,加入如下内容,下面的路径是ecipse的路径 Vim export UBUNTU_MENUPROXY=0 /opt/eclipse/eclipse 123 export UBUNTU_MENUPROXY=0 /opt/eclipse/e...

在装Android SDK时连接不上,解决方法如下: 第一步 改hosts(linux下在 /etc/hosts): #Google主页 203.208.46.146 www.google.com #这行是为了方便打开Android开发官网 现在好像不VPN也可以打开 74.125.113.121 developer.android.com #更新的内容从以下地址下载 203.208.46.146 dl.google.com 203.208.46.146 dl-ssl.google.com **************************************** 第...

+
跳转到评论