logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

模拟一个TCP数据注入劫持的案例

注意区分几种劫持:DNS劫持HTTP 302劫持TCP注入劫持对于DNS和302,并不是我的强项,我也不是很关注,我主要关注TCP注入,即把脏数据注入到一个TCP流中,这个很容易做到。我先给出一段代码,这个代码就可以完成注入:#!/usr/local/bin/pythonimport sysimport signalfrom scapy.all import *target = sy

Linux故障没有panic就直接宕机了

一般情况下,Linux内核在遇到不可恢复的故障时,就会panic,类似Windows的蓝屏,不管是panic还是蓝屏,总是会在屏幕上打印一些东西,这就是 最后一屏有用的信息。这最后一屏信息非常重要,它可以帮助我们定位引发系统故障的潜在的bug。事实上,很多时候,对于开源系统而言,这最后一屏信息甚至比vmcore之类的更加有用且轻量级。比如根据堆栈和出错的函数位置,基本对着代码就能看出个究竟。那..

实现一个Linux文件系统ACL防火墙-FS_HOOK简介

近日,我将一个基于eBPF实现的SandFS中的eBPF部分摘除了,形成了一个单纯的SandFS框架:https://github.com/marywangran/sandfs_with_no_ebpf纳尼?eBPF大红大紫之时,我竟然反其道而行之,这不犯了形而上学的错误了吗?没错,事实上我摘除它的原因是因为这个原生的eBPF-based-SandFS在我的两个开发环境中均没有编译通过:...

snort和scapy以及hping

<br />snort<br />这是一个很好的开源的入侵检测软件,基于libpcap,可以步在路由器,可以步在交换机镜像旁路,也可以步在自己的linux机器上,配制简单,策略丰富,在非加密链路上,甚至可以实现七层内容监控。最简单的学习方式就是阅读它自带的rule,比如最简单的/etc/snort/rules/icmp.rules,它的第一策略行是:<br />alert icmp $EXTERN

#python#linux
像玩乐高一样玩simpletun

netcat小巧而灵活,能应付各种你需要的网络测试。但要明白netcat所能应对的网络场景基本都和端到端有关,比如和TCP,UDP有关。网络还有另一面,即链路本身。如果你想模拟一个防火墙,模拟一个NAT怎么办?用netcat能做到吗?这个时候你可能就必须自己写内核模块了吧。Netfilter?eBPF?NFV?这些都太复杂了!可以在用户态完成的时候就尽量在用户态搞,简单稳定最重要。我推荐simpl

自上而下的传输协议-TCP/IP 的演化

动机来自昨天下班路上快到家发的一则朋友圈:作为因果的历史是不存在的。因为有无数种对等的解释。这个可以用拓扑学证明的,模型非常简单,事件作为点,事件之间的关系作为连接两点的有向边。最近思考一个问题,传输协议这么多,为什么我们不能再创造一个,就像 github 上写一个项目那样。或者很多人都已经尝试这么做了,但发现这个过程很艰难,最终绝大多数充其量只是完成一个永远上不了线的 “设计”。另一方面,我们也

#tcp/ip#网络#网络协议
从鸿蒙操作系统的发布,经Minix认识微内核

浙江温州皮鞋湿,下雨进水不会胖!来自《有关微内核OS史上最透彻一篇 - 写于华为鸿蒙发布一周之际》https://mp.weixin.qq.com/s/MLCR7qqGFWyyP0KcZqW3Kw华为鸿蒙OS发布已经一周了,在这一周中发生了很多事情,有人对华为路转粉,也有人对华为粉转黑,在时下,只要是华为的任何动作,背后都早已预备好某种正确,当然,所有事先备好的正确,必然不是客观的,所以为了...

低时延,可扩展的 l4s 拥塞控制算法

只有 1 条流,buffer 中是 a 个报文,2 条流就是 a / 2 个报文,n 条流就是 a / n 个报文,无论多少条流,buffer 中总报文数量都是 a,这就保证了时延是固定的,由于 buffer 中保留了报文,和 vegas 类似,sender 可自动获取退出流出让的带宽,也能动态出让带宽给新流。强调可扩展算法在不随流量变化的时间从拥塞中恢复,但我强调另一面,如果拥塞从不发生,并且稍

文章图片
#网络
Kafka设计思想的脉络整理

Kafka是一个被精心设计的东西,我只能这样说。我这里所谓的精心不是说它很完备的实现了某种规范,像个学生那般完成了某个作业,比如JMS,恰恰相反,Kafka突破了类似JMS这种规范性的束缚,它是卓越的,乃yet another JMS。当我用yet…如此称呼一个技术的时候,意味着这玩意儿已经进入了我的视野。好了,现在是Kafka和Storm时间,本文先谈Kafka。Kafka是什么?参见官...

对操作系统的五点感受--接口/进程/内存/磁盘管理/系统架构

之一:管理和使用--对内和对外的接口总的说来吧,任何事情都有两套机 构,一套是为使用而设置的,另一套是为管理而设置的,比如一个网站,普通的页面是为了让用户访问的,而一般还要有一系列的后台管理页面。 vm_struct的pages字段就是管理机构,而pte就是使用机构,当然管理时也可以用pte来查找,但是那样就太麻烦了,于是专门设置一个一个结 构进行vm_struct的管理。简单说,pte方式

#linux#windows#数据结构
暂无文章信息