本文仅为作者学习笔记,内容源自论文“匿名通信与暗网研究综述——罗军舟等”本身以及相关网络搜索
1、匿名通信与暗网 匿名通信指采取一定的措施隐蔽通信流中的通信关系,使窃听者难以获取或推知通信双方的关系及内容。匿名通信的目的就是隐蔽通信双方的身份或通信关系,保护网络用户的个人通信隐私。——MBA智库百科
匿名通信是一项技术,用于保护通信双方的隐私,使窃听者无法获取通信双方的关系及内容。匿名通信系统是提供匿名通信服务的一套完整网络,主要由提供加密服务的节点组成。暗网是匿名通信系统的其中一种表现形式,利用隐藏服务机制,使监管者无法有效监控暗网中的非法活动。
学术界对匿名通信系统研究的2个方向 专注于匿名通信系统本身,分析其安全性并提出相关的隐私增强技术:包括
匿名接入、
匿名路由、
隐藏服务等机制的优化,
流量混淆和
协议伪装等技术的设计和应用。 针对匿名通信系统和暗网的攻击和监管:利用流量分析,系统/协议漏洞分析,提出去匿名化的攻击方法,包括
暗网隐藏节点发现,
隐藏服务定位,
暗网用户的网络行为分析,
暗网流量追踪,
通信关系确认等。 2、匿名通信系统的分类和基本工作原理:Tor、I2P、Freenet、Zeronet 3、匿名通信关键技术 3-1、匿名接入:bridge、meek、FTE、Flashproxy 3-2、匿名路由:洋葱路由、大蒜路由、基于DHT的路由 3-3、暗网服务技术:Tor、I2P、Freenet、Zeronet 4、匿名通信攻防研究 4-1、匿名通信攻击技术:主动攻击、被动攻击、单端攻击、端到端攻击 4-2、匿名通信增强技术 目前已存在一些用来防御各种攻击的研究工作,从广义地讲,可以从网络层、协议层和应用层3个角度进行部署。
阻止网络层攻击的基本思路是去除与用户相关连流量的特征,包括:数据包大小分布、数据包顺序、流速率、流量时间等。
包填充技术可以基于一定填充策略填充数据包大小,以便去除数据包长度相关特征。
Wright等人提出了流量整形技术,使数据包长度与目标页面流量数据包分布相似,可以有效防御Liberatore等人提出的攻击方法。 Chan-Tin等人提出了一种基于聚类的流量整形技术,使簇中的不同网站流量特征看起来基本相同,从而使分类精度从70%下降到不足1%。 流量填充技术可以将伪数据包注入到用户的原始流量中,以便模糊流量大小。例如,为了阻止网站指纹攻击,网络服务器可以首先选择目标页面,然后模仿目标网页的数据包大小分布。
为了应对Panchenko等人的网站指纹攻击,Tor项目提出通过随机化HTTP流水线管道中的最大请求数来进行防御。 Nithyanad等人指出,在Tor暗网中40%的链路易受AS级别的流量关联攻击,为此他们提出了一种新的Tor客户端Astoria,通过网络测量和路径预测来进行智能路由选择,降低来自AS级别的威胁。 Juen等人通过路径预测技术来抵御来自AS和网络交换机的流量分析攻击,但该方法仍然有提升空间。 在协议层,报文填充和流量填充技术可以隐藏与用户相关联的流量特征。Secure Shell(SSH)、TLS和IPSec应用这一的报文填充技术可以将明文与块密码边界对齐,从而在一定程度上模糊包大小。为了进一步提高安全性,可以选择随机数量的数据包进行填充。此外还可以使用协议级流量填充技术。例如,Tor通常不将填充数据单元的功能用于链路级填充,因为它会显著降低链路的性能,因此可以设计协议级报文填充和流量填充技术,以在一定程度上减少开销。
在应用层,可以利用HTTP特征和背景流量(即诱饵网页)从用户流中移除流量特征。例如,HTTP流水线技术和HTTP range字段可以用于调整传入和传出的数据包大小。此外,在客户端改变HTTP请求的顺序可以在一定程度上改变流量模式。为了在应用层使用背景流量技术,当用户浏览目标网页时,可以在背景浏览中加载诱饵网页。但这种类型的防御技术只能用于一些特定的协议(如HTTP),不能广泛应用于所有协议。Wang等人提出了一种高效的网站指纹防御技术Walkie-Talkie,通过修改浏览器以半双工模式进行通信,可以模拟突发序列,使敏感和非敏感页面的浏览模式类似。实验结果表明Walkie-Talkie能够以较低的带宽和时间开销防御网站指纹攻击。
5、暗网治理技术研究 针对暗网服务滥用的问题,提出了对暗网bridge节点的发现方法。通过分析典型匿名通信系统Tor节点的选择算法,提出以节点注入方式枚举在线bridge节点的方法,并利用协议特征以区分客户端、正常匿名入口节点和bridge节点。通过理论分析推算枚举所有节点的时间,并根据理论结果指导实际部署,以达到最优的资源配置和最快的bridge节点捕获速率。此外,在获取部分bridge节点的基础上,通过对受控网络的监控,分析出入流量中存在的bridge节点网络连接特征,从而关联更多的bridge节点。
针对匿名通信系统Tor的暗网因此服务节点,提出了隐藏服务定位技术,为暗网中的非法内容监管提供支持。在分析Tor隐藏服务节点与客户端之间的匿名通信协议的基础上,部署部分Tor入口节点,控制客户端不断向目标隐藏服务节点发起连接,以产生具有可检测特征的隐蔽、快速流量,并在受控制节点观察流量特征以定位和确认隐藏服务节点。通过对暗网通信系统选路算法的理论分析,推算其隐藏服务节点选择受控制节点的概率,以此指导节点部署规模,以最小资源代价实现暗网隐藏服务节点的捕获。
针对滥用暗网的用户,提出暗网用户的上网行为分析技术,为暗网用户的监管提供支撑。暗网用户流量经过加密、混淆等操作后,其识别难度大大增加,为此提出了暗网通信流量识别技术。针对典型暗网系统,分别从协议设计和实现机制入手,研究匿名通信性系统中通信数据的缓存、封装和调度机制。同对数据包分布、流量统计属性等不同层面特性的综合分析,筛选匿名通信流量的可区分特性,并从理论上分析证明特征选择的合理性。在此基础上,研究并选取合适的机器识别方法,实现对匿名通信流量的快速、准确在线识别。
在识别暗网用户的基础上,为进一步推测暗网用户加密流量中的应用类型,提出了暗网通信应用分类技术。在各种交互式和非交互式暗网通信应用流量进行深入分析的基础上,建立包括上下行流量比、并发连接数等指标的流统计模型,并将其作为先验知识。针对采集的流量样本使用特征选择算法,获取不同匿名协议相应的对噪声不敏感、区分度高的特征。在此基础上,选择抗干扰分类性能稳定的分类模型,对匿名通信流量上应用层进行分类,建立分类评价模型,根据分类误差率、计算时间复杂度等指标,对所选特征和分类模型进行评价。
针对暗网用户和网站访问流量,提出了暗网加密流量内容分析技术,以推测用户访问的站点。分布针对单跳和多跳匿名通信系统,研究其采用的安全传输和匿名协议,并深入分析上层应用对暗网通信包长、时间间隔、以及并发匿名链路数量等流量特征的影响。在此基础上,重点针对HTTP等典型暗网通信流量,通过被动和主动方式采集并预处理流量数据,提取特征生成指纹,从而建立所关注木匾站点的指纹库,使用高效分类模型将未知暗网流量与指纹库中的数据进行匹配,分析可能的暗网通信目的端。
对于访问非法站点的用户,提出了不同层次的通信追踪技术,能够快速、准确、隐蔽地确认匿名流量之间的通信关系。通过分析匿名通信机制以及各种网络干肉对网络流量时间特征的影响,利用随机过程理论建立干扰环境下匿名通信流量时间特征变化的数据模型。在通用流水印追踪架构的基础上,根据水印追踪的隐蔽性和健壮性要求,利用信息论方法评估基于现有流水印机制构建的隐蔽信道的容量。在此基础上,引入最优停止理论,研究并设计了自适应的水印嵌入与检测机制。
独家分享!
炸了,炸了!社工裤再次强大了一波!
这几天某黑客论坛出现重磅“炸弹”,一个87GB的数据包开始流通,其中 7.73 亿电子邮件地址和 2122 万个唯一密码!!!
看上去不错,嗯?你很认真的看到了这里?
客官别急,这时候不妨点根烟,泡杯茶往下慢慢看。
国外安全研究员 Troy Hunt 披露,上周他被告知一个流行的黑客论坛正在讨论 MEGA 上的一个公开数据集,其容量超过 87GB。在对原数据进行清理过滤后,最终整理的内容包含了 7.73 亿电子邮件地址和 2122 万个唯一密码。这个庞大的数据量,使其成为有史以来载入HIBP网站的最大的漏洞。
数据集的根文件夹名字叫 Collection #1,因此这一次的数据泄露被称为 “Collection #1”。Hunt 称,他检查了这个数据集,发现自己的电子邮件地址和曾使用的旧密码都在里面,而且竟然还是正确的,所幸密码已不再适用。
今天一大堆人QQ弹我找我要数据下载地址,导致我的心情很复杂,这些人实在劝不住,不过把眼瘾不痛快。。
但是我不得不说,现如今有如此执着与单纯的心,实属不易。
群号:151929869(后续若有数据第一时间分享)
“Learning Efficient Object Detection Models with Knowledge Distillation”这篇文章通过知识蒸馏(Knowledge Distillation)与Hint指导学习(Hint Learning),提升了主干精简的多分类目标检测网络的推理精度(文章以Faster RCNN为例),例如Faster RCNN-Alexnet、Faster-RCNN-VGGM等,具体框架如下图所示:
教师网络的暗知识提取分为三点:中间层Feature Maps的Hint;RPN/RCN中分类层的暗知识;以及RPN/RCN中回归层的暗知识。具体如下:
具体指导学生网络学习时,RPN与RCN的分类损失由分类层softmax输出与hard target的交叉熵loss、以及分类层softmax输出与soft target的交叉熵loss构成:
由于检测器需要鉴别的不同类别之间存在样本不均衡(imbalance),因此在L_soft中需要对不同类别的交叉熵分配不同的权重,其中背景类的权重为1.5(较大的比例),其他分类的权重均为1.0:
RPN与RCN的回归损失由正常的smooth L1 loss、以及文章所定义的teacher bounded regression loss构成:
其中Ls_L1表示正常的smooth L1 loss,Lb表示文章定义的teacher bounded regression loss。当学生网络的位置回归与ground truth的L2距离超过教师网络的位置回归与ground truth的L2距离、且大于某一阈值时,Lb取学生网络的位置回归与ground truth之间的L2距离,否则Lb置0。
Hint learning需要计算教师网络与学生网络中间层输出的Feature Maps之间的L2 loss,并且在学生网络中需要添加可学习的适配层(adaptation layer),以确保guided layer输出的Feature Maps与教师网络输出的Hint维度一致:
通过知识蒸馏、Hint指导学习,提升了精简网络的泛化性、并有助于加快收敛,最后取得了良好的实验结果,具体见文章实验部分。
以SSD为例,KD loss与Teacher bounded L2 loss设计如下:
# -*- coding: utf-8 -*- import torch import torch.nn as nn import torch.nn.functional as F from ..box_utils import match, log_sum_exp eps = 1e-5 def KL_div(p, q, pos_w, neg_w): p = p + eps q = q + eps log_p = p * torch.
本文记录 PHP 代码审计的学习过程,教程为暗月 2015 版的 PHP 代码审计课程
PHP 代码审计博客目录
1. 简介 web环境: phpstudy apache+php5.2
程序版本:phpyun3.0 2013-11-02
2. 测试 首先注册一个会员 然后访问
http://192.168.171.128/member/index.php?XDEBUG_SESSION_START=netbeans-xdebug&M=index&C=save_avatar&type=small&photoId=1.php
POST:
构造文件上传成功 我们访问下
http://192.168.171.128/upload/user/user_small/1.php
1、Distilling the Knowledge in a Neural Network Hinton的文章”Distilling the Knowledge in a Neural Network”首次提出了知识蒸馏(暗知识提取)的概念,通过引入与教师网络(teacher network:复杂、但推理性能优越)相关的软目标(soft-target)作为total loss的一部分,以诱导学生网络(student network:精简、低复杂度)的训练,实现知识迁移(knowledge transfer)。
如上图所示,教师网络(左侧)的预测输出除以温度参数(Temperature)之后、再做softmax变换,可以获得软化的概率分布(软目标),数值介于0~1之间,取值分布较为缓和。Temperature数值越大,分布越缓和;而Temperature数值减小,容易放大错误分类的概率,引入不必要的噪声。针对较困难的分类或检测任务,Temperature通常取1,确保教师网络中正确预测的贡献。硬目标则是样本的真实标注,可以用one-hot矢量表示。total loss设计为软目标与硬目标所对应的交叉熵的加权平均(表示为KD loss与CE loss),其中软目标交叉熵的加权系数越大,表明迁移诱导越依赖教师网络的贡献,这对训练初期阶段是很有必要的,有助于让学生网络更轻松的鉴别简单样本,但训练后期需要适当减小软目标的比重,让真实标注帮助鉴别困难样本。另外,教师网络的推理性能通常要优于学生网络,而模型容量则无具体限制,且教师网络推理精度越高,越有利于学生网络的学习。
教师网络与学生网络也可以联合训练,此时教师网络的暗知识及学习方式都会影响学生网络的学习,具体如下(式中三项分别为教师网络softmax输出的交叉熵loss、学生网络softmax输出的交叉熵loss、以及教师网络数值输出与学生网络softmax输出的交叉熵loss):
联合训练的Paper地址:https://arxiv.org/abs/1711.05852
2、Exploring Knowledge Distillation of Deep Neural Networks for Efficient Hardware Solutions 这篇文章将total loss重新定义如下:
GitHub地址:https://github.com/peterliht/knowledge-distillation-pytorch
total loss的Pytorch代码如下,引入了精简网络输出与教师网络输出的KL散度,并在诱导训练期间,先将teacher network的预测输出缓存到CPU内存中,可以减轻GPU显存的overhead:
def loss_fn_kd(outputs, labels, teacher_outputs, params): """ Compute the knowledge-distillation (KD) loss given outputs, labels. "Hyperparameters": temperature and alpha NOTE: the KL Divergence for PyTorch comparing the softmaxs of teacher and student expects the input tensor to be log probabilities!
CCS7.3 安装使用教程 •Code Composer Studio™ IDE,是TI的集成开发环境。 Code Composer Studio™ Desktop IDE for all TI microcontrollers, processors, and wireless connectivity platforms。TI所有的产品都可以用ccs进行开发。 1.首先到TI官网进行下载最新本CCS7.3。
2.下载完成后,双击CCS_SETUP.EXE进行安装。安装路径注意不要有中文
3.按照提示,点击continue,next…………. 到达如下界面选择性安装。选择的产品越多,安装占用的硬盘空间越大,安装时间越长 剩下的就是按照提示进行等待,安装时间根据个人电脑配置而异。
CCS7.3新建工程 1. 双击桌面上CCS图标,
就会出现工作空间指定界面。这里要设置好工作空间路径。
软件打开后会看到左侧的project管理窗口。在这个工作空间内的所有project都会在这里显示。
新建工程 点击File-> New -> CCS Project 出现工程设置界面如下
1选择器件系列,2选择具体器件型号3设置工程名字4指定编译器5指定工程模板 这样一个新的project工程就新建好了。 补充: 1.CCS导入工程,CCS是eclipse结构软件,不能像KEIL软件那样直接打开工程。CSS工程文件只能通过导入的方式打开。在project管理窗口空白处右键 ->import ->CCS project。 浏览找到要打开的工程文件路径即可导入工程,导入工程的界面左下角有一个copy project into workspace 的复选框,勾选上后 导入的project就会复制到你的工作空间中。
在ArcGIS中平移要素时经常出现“无法移动要素。坐标或测量值超出范围”的问题,这种情况通常有由于坐标系的空间范围问题造成的,如果你还想使用这个坐标系,有一个很简单的处理方法:
1.首先去掉数据的坐标系
具体的操作见http://blog.csdn.net/gisuuser/article/details/52197909
2.平移数据,不会出现任何问题
根据自己的需要平移
3.再添加原来的坐标系