最新消息:非无江海志,潇洒送日月

江海志的文章

编程开发

什么是回调函数(callback function),它有什么作用?

7年前 (2018-04-02) 6304浏览 0评论

编程分为两类:系统编程(system programming)和应用编程(application programming)。所谓系统编程,简单来说,就是编写库;而应用编程就是利用写好的各种库来编写具某种功用的程序,也就是应用。系统程序员会给自己写的库留下一些接口,即API(application programming interface,应用编程接口),以供应用程序员使用。...

详细分析HTTPS 原理以及为什么要这么做
网络安全

详细分析HTTPS 原理以及为什么要这么做

7年前 (2018-03-31) 3196浏览 0评论

前言 HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer),其实 HTTPS 并不是一个新鲜协议,Google 很早就开始启用了,初衷是为了保证数据安全。 近两年,Google、Baidu、Facebook 等这样的互联网巨头,不谋而合地开始大力推行 HTTPS, 国内外的大型互联网公司很多也都已经启用了全...

系统安全

关于泊松分布的理解

7年前 (2018-03-16) 5396浏览 0评论

首先必须由二项分布引出: 如果做一件事情成功的概率是 p 的话,那么独立尝试做这件事情 n 次,成功次数的分布就符合二项分布。展开来说,在做的 n 次中,成功次数有可能是 0 次、1 次 …… n次。成功 i 次的概率是: ( n 中选出 i 项的组合数) * p ^ i * (1-p)^ (n-i) 以上公式很容易推导,用一点概率学最基本的知识就够了。因为每一特定事件成功的概...

系统安全

GPG的生成随机数的原理思考

7年前 (2018-03-14) 3274浏览 0评论

“随机数”不等于“随便产生的数”。 用于密码学的“真随机数”必须满足其分布为平均分布(uniform random distribution)这个要求。而这个,在技术实现上是很难的,采样、启动噪声源都是导致随机bit产生的速度远远慢于“随便弄个数”的原因。 “伪随机”(pseudorandom)的字面意思是说,“看起来像真随机”。 学界已经有很多怎么把...

stack frame栈帧简介
系统安全

stack frame栈帧简介

7年前 (2018-03-13) 5210浏览 0评论

0x01 栈帧是什么 “IA32 programs make use of the program stack to support procedure calls”. “IA32程序使用程序栈帧来支持子程序调用”(出自CSAPP,即《深入理解计算机系统》) 个人理解,栈帧就是内存的一段数据,在内存栈区域,对子程序的数据进行一个临时保存。 什么是栈? 栈和堆类似,都是操作系统中...

程序或-内存区域分配(五个段)
系统安全

程序或-内存区域分配(五个段)

7年前 (2018-03-13) 3533浏览 0评论

一. 在学习之前我们先看看ELF文件。 ELF分为三种类型:.o 可重定位文件(relocalble file),可执行文件以及共享库(shared library),三种格式基本上从结构上是一样的,只是具体到每一个结构不同。下面我们就从整体上看看这3种格式从文件内容上存储的方式,spec上有张图是比较经典的:如上图: 其实从文件存储的格式来说,上面的两种view实际上是一样...

ELF文件格式解析
系统安全

ELF文件格式解析

7年前 (2018-03-13) 4054浏览 0评论

1. ELF文件简介 首先,你需要知道的是所谓对象文件(Object files)有三个种类: 可重定位的对象文件(Relocatable file) 这是由汇编器汇编生成的 .o 文件。后面的链接器(link editor)拿一个或一些 Relocatable object files 作为输入,经链接处理后,生成一个可执行的对象文件 (Executable file) 或...

系统安全

动态链接库中的.symtab和.dynsym

7年前 (2018-03-13) 3038浏览 0评论

shared library (.so) “Program Library Howto-Shared Libraries“是很好的材料, 下面的内容多是据此整理的. 定义: Shared libraries are libraries that are loaded by programs when they start. 使用shared librar...

英特尔SGX侧信道攻击 (side-channel attacks) 综述
系统安全

英特尔SGX侧信道攻击 (side-channel attacks) 综述

7年前 (2018-03-03) 6032浏览 0评论

Intel SGX 技术是一种新的基于硬件的可信计算技术。该技术通过CPU的安全扩展,对用户空间运行环境(enclave)提供机密性和完整性保护。即使是攻击者获得OS,hypervisor,BIOS 和SMM 等权限,也无法直接攻击enclave。因此,攻击者不得不通过侧信道的攻击方法来间接获取数据(比如隐私数据,加密密钥等等)。得益于enclave 的强安全假设和工作模型,攻...

系统安全

Intel SGX 新技术学习研究资料总结

7年前 (2018-03-03) 5035浏览 0评论

SGX是Intel开发的新的处理器技术,可以在计算平台上提供一个可信的空间,保障用户关键代码和数据的机密性和完整性,从SGX提出后,其吸引了一批系统和网络安全的研究者,NCCGroup的博客对SGX方面的资料进行了一个初步的总结,对研究者学习SGX技术具有很好的引导作用。这里主要根据该博文对SGX进行简单的整理。 目前并没有基于SGX的产品出现,不过学术界已经给出了一些应用来说...

HTTP/2之服务器推送(Server Push)实例分析
网络安全

HTTP/2之服务器推送(Server Push)实例分析

7年前 (2018-03-02) 3140浏览 0评论

HTTP/1.X出色地满足互联网的普遍访问需求,但随着互联网的不断发展,其性能越来越成为瓶颈。IETF在2015年发布了HTTP/2标准, 着重于提高HTTP的访问体验, HTTP2优势主要包括: 二进制传输、头部压缩、多路复用和服务器推送(Server Push)。 截止目前, 大部分CDN厂商已经宣布支持HTTP/2,然而”支持”大多省略了服务器推送(ServerPush)...

IOS应用开发中的一些https注意事项
网络安全

IOS应用开发中的一些https注意事项

7年前 (2018-01-30) 3893浏览 0评论

苹果在 WWDC 2016 上宣布:2016 年底将要求所有 APP 适配苹果的 App Transport Security,简单地说就是除了特殊情况(浏览器、第三方服务、媒体)外,APP 跟服务端的通信必须使用 HTTPS 协议,否则 iOS 9 和 macOS 10.11 起,操作系统将有能力阻止所有的明文 HTTP 请求。在上面的 session 中,苹果还对具体的细节...

谷歌广告(Google AdSense/ AdWords)可能遭遇恶意利用
网络安全

谷歌广告(Google AdSense/ AdWords)可能遭遇恶意利用

7年前 (2018-01-29) 5234浏览 0评论

安全研究人员最近注意到大量的网站被莫名其妙地跳转到某几个特定的网站,经过调查,罪魁祸首居然是谷歌广告联盟(Google AdSense)。 上周末,我们注意到大量站长的网站都被跳转到了某个“杂志网站”,有些用户点击链接或者载入新网页时会被随机地跳转。这些用户都称,打开网页会显示个一两秒,然后就会跳转了。 lemode-mgz .com假冒“福布斯” 我们对这些网站进行了安全...