论文阅读-A Sense of Self for Unix Process

前言

本篇论文是一篇早期的针对主机入侵检测的论文,其中一些思想具有开创性。

入侵检测的目标

作者认为基于先验知识的入侵检测是不完备的,一个好的入侵检测系统更应当和生物的免疫系统相近,即要满足以下三点目标

  • 检测系统应当是分布式的且每个检测系统应当具有特例性。生物的身体每个部分的功能不同,其对于异常的判定也不尽相同,在计算机系统中,我们不应当用一个统一的标准去做用于所有的进程,而是更应当根据每个进程本身的运行特性去制定一个相应的检测规则。
  • 检测系统是基于概率的,并且是实时的在线的。实时性应当是入侵检测系统中最重要的一环。
  • 就像生物的免疫系统一样,识别出的入侵行为,不应当仅局限于之前见到过的(即不应当完全是基于先验知识的)而是要对新出现的异常行为也能够做出反应。

如何刻画进程行为?

想要做到上述的目标,首先我们要转变思路,即从如何定义异常转化为如何定义正常。在此之前我们首先要解决的,是如何刻画一个进程的行为。我们知道进程的行为及其复杂,我们不可能考虑所有的行为。因此我们关注的是其中一些比较重要的操作,操作系统分为内核态和用户态,执行特权指令(系统调用)会陷入内核态。我们认为在用户态下的操作是相对安全的,因此重点关注于一个进程的系统调用序列。与多数使用数据挖掘方法寻找一个重复出现的pattern相比,作者采用了另一种方法,即观察到在一个局部范围内,这些系统调用出现的次序通常是相对固定的。
于是作者根据正在运行的进程中短时间的系统调用序列来定义正常行为,比如设定这些序列的长度为6。然后利用这些长度为6的系统调用序列构建该进程的正常行为数据库,之后该数据库即可用于监视该进程的后续行为。正常的系统调用序列构成的数据库指明了该进程的正常行为模式,异常序列指示正在运行的进程中存在异常。

  • 构建进程正常行为数据库
    假设给我们一个正常的的系统调用序列,其长度L,我们可以采用滑动窗口的方法生成局部的系统调用序列,假设我们的窗口尺寸为K+1,那我们每次可以提取窗口最左端的系统调用C_0,以及紧随其后的1K个系统调用作为一个局部系统调用序列,然后将窗口向右移动一个位置来获取下一个局部系统调用序列。

Example:
整个序列长度为L=8, K=3如下
[open, read, mmap, mmap, open, getrlimit, mmap, close]
则我们可以生成如下的局部系统调用序列call表示首个系统调用,position1表示跟随其后第一个位置上的系统调用,以此类推直到position3

call position1 position2 position3
open read mmap mmap
getrlimit mmap close
read mmap mmap open
mmap mmap open getrlimit
open getrlimit mmap
open getrlimit mmap
close
getrlimit mmap close
close

现在假设我们用以上的局部系统调用构建好了反应进程正常行为的特征库,现在进程生成了长度为L=8的另一串系统调用序列
[open, read, mmap, open, open, getrlimit, mmap, close]
我们可以用如上相同的滑动窗口方法生成以下局部子序列

call position1 position2 position3
open read mmap *open
*open *getrlimit mmap
read mmap *open open
mmap open open getrlimit
close
getrlimit mmap close
close

通过对比正常行为特征的数据库,我们可以发现上图表格有4处系统调用在与相应位置的正常行为产生偏差,我们记录这个数量为4,同时我们又可以通过数学方法计算出最多有
K*(L-K)+(K-1)+(K-2)+....+1 = K(L-(K+1)/2)
种可能的不匹配序列,这里L表示用于检测的整个序列长度。
K=3以及L=8时,共存在18种不正常的局部系统调用序列,则我们可以计算出共有该长度为L=8的系统序列的种异常比例为4/18=22%,我们可以定义一个阀值来判定是否产生了异常。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,378评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,356评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,702评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,259评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,263评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,036评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,349评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,979评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,469评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,938评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,059评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,703评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,257评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,262评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,485评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,501评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,792评论 2 345

推荐阅读更多精彩内容