论文记录:Touching from a Distance: Website Fingerprinting Attacks and Defenses

0x00

本系列笔记是用来记录论文阅读过程中产生的问题与思考的随笔性质文本,结构可能比较松散,无法完全体现原论文的精髓之处,仅供自己日后温习参考之用。

  • 题目:Touching from a Distance: Website Fingerprinting Attacks and Defenses
  • 作者:Xiang Cai (Stony Brook University); Xin Cheng Zhang (Stony Brook University); Brijesh Joshi (Stony Brook University); Rob Johnson (Stony Brook University)
  • 出处:CCS ‘12 Proceedings of the 2012 ACM conference on Computer and communications security Pages 605-616
  • 关键词:Anonymity; website fingerprinting attacks

0x01 提出问题

  • Web站点的识别攻击已有对应的防御之策。例如:HTTPOS和TOR会将请求拆分并打乱顺序。
  • 以上两种防范方法皆可攻破。我们提出了能够识别TOR和SSH流量归属的方法。同时,我们还可以提出更好的防御方法。

0x02 解决方法

  • 我们首先使用计算编辑距离(Damerau-Levenshtein edit distance)的方式来建立网页(Web pages)分类识别系统,随后我们使用隐藏马尔科夫模型(Hidden Markov Models)来建立网站(Web sites)分类识别系统。最后,我们改良了BUFLO模式,并以此作为一个新的防御方法。
Read More

论文记录:Identifying Encrypted Malware Traffic with Contextual Flow Data

0x00

本系列笔记是用来记录论文阅读过程中产生的问题与思考的随笔性质文本,结构可能比较松散,无法完全体现园论文的精髓之处,仅供自己日后温习参考之用。

  • 题目:Identifying Encrypted Malware Traffic with Contextual Flow Data
  • 作者: Blake Anderson (Cisco), David McGrew (Cisco)
  • 出处:AISec ‘16 Proceedings of the 2016 ACM Workshop on Artificial Intelligence and Security
  • 关键词:Malware; Machine Learning; Transport Layer Security; Network Monitoring

0x01 提出问题

  • 根据恶意软件收发的加密流量数据来检测恶意软件的类型是很有必要的。
  • 传统的特征提取方式大多聚焦在数据包大小和一些与时间有关的参数,本文扩充了特征提取范围,运用到完整TLS握手数据包、同TLS握手数据包同一来源的DNS数据流和5分钟窗口内的HTTP数据流(后两者被称为contextual flow)。根据以上数据,我们能够
  • 将提取到的特征输入到监督机器学习算法中,能够得到非常高的识别准确率。
Read More

A little thought about Spider(iii) -- 登录

0x00

如果你对于爬虫,只具有简单的兴趣,那么前两篇文章可能已经足够。

但是,真正能够被投入应用的爬虫,是不能如此简单的。不是所有的网站,都只会站在那里等着你爬。一些网站中含有许多构造精巧的机关,它们使得你不能动作自如。

比如,同样的域下,一些页面可以自如浏览,而另一些却只能再登录之后浏览。因此,模拟成为一项必要的技术。

但是我在进行模拟登录的时候,却屡次遭遇400状态码,这代表请求格式出现错误。花了很长时间,终于解决问题。因此,将这个问题的来龙去脉记录下来是很有必要的。但在那之前,还是要先介绍一下模拟登录的具体步骤。

Read More

A little thought about Spider(ii)

0x00

在这篇文章中,我将记录一个真实的爬虫案例。该爬虫基于Scrapy框架,爬取Fanfiction中有关Zootopia的所有评论数量超过100的同人文。 关于Scrapy框架的使用方法我便不多介绍,其官方文档中有详尽的描述。 接下来,按照上一篇文章的顺序,我们逐步解析一下这个案例:

0x01 关于入口地址

Scrapy框架采用面向对象方式,许多方法都已事先封装好。因此,我们只需傻瓜式地在我们的爬虫类中定义一些属性:

name = "fanficzoo"    #爬虫名称
allowed_domains = ["www.fanfiction.net"]    #爬虫的活动范围
start_urls = ["https://www.fanfiction.net/search.php?ready=1&keywords=zootopia&type=story&ppage=1"]    #入口地址
Read More

A little thought about Spider(i)

0x00

这段时间需要做一个项目,其中一个模块便是从一些特定网站收集信息。因此,爬虫成了实现该功能的不二工具。由于是第一次真正着手学习爬虫,因此我将在这里记录下学习过程和一点思考。

0x01

让我们先从最简单的爬虫做起。首先我们需要知道的,便是爬虫需要具备的基本功能:

  • 向服务器发送请求,接收响应
  • 解析接收的文件,并从中获取需要的信息

这大概便是爬虫的根基所在。至于识别进入下一链接以及查询重复链接等功能,则暂时不需讨论。

Read More

^