基础知识
查看网络包

tcpdump -i eth0 -e -v -ltcpdump -i eth0 -e -v -l -w a.pcap

a.pcap给wireshark用

这个是必要的
转发三步走:
1.配置Linux系统的ip转发功能

echo 1 >/proc/sys/net/ipv4/ip_forward 

2.iptables转发:

iptables -t nat -A POSTROUTING -s "10.0.2.0/255.255.255.0" ! -d "10.0.2.0/255.255.255.0" -j MASQUERADE 

3.开启混杂模式:

ip link set br1 promisc on

防止环路

#brctl stp br1 on#brctl stp br1 off

##########################################
服务端(配置ip)
ip link set tap1 up
ifconfig tap1 inet 10.0.2.1

客户端
ip link set eth0 up
ifconfig eth0 inet 10.0.2.100
(配置默认路由)
route add default gw 10.0.2.1 dev eth0

测试
ping 192.168.128.1
echo 8.8.8.8 > /etc/resolv.conf
ping www.baidu.com

刚连websocket的时候
01:00:5e:00:00:01 dev eth0 self permanent
是组播地址

jslinux中的代码走向

FileReader.onloadnet_handlerpc.serial2.send_chars(str);pc.net0.receive_packet(data);

######################################
原理:
1.linux上建立br桥,桥用ipv4的转发和外网相通
2.py_websocket建立服务,每次连接时建立一个tap设备绑定到br上
3.web端用websocket连到py_websocket的服务上,
4.websocket的客户端用FileReader的onload特性(文件读取成功完成时触发)
接受消息pc.net0.receive_packet(data);
传入linux内核

定义net0的时候发现,linux向外发送消息是
ai定义了send_packet_func绑定自定义pi,
pi里面调用tuntap_sendData(withPrefix);
向websocket服务发送消息

最终实现
[color=red]
linux--->js(net0)--->filereader--->websocket--->服务(tap设备)---br网桥-->互联网
[/color]

########################
操作步骤

下载

git clone http://github.com/killinux/jslinux-deobfuscated-network

随便放在nginx等web服务器中跑起来

cd websocketstuntap/
按照launch.sh中的操作:
设置ip转发

echo 1 >/proc/sys/net/ipv4/ip_forward 

设置桥,和给桥设置ip

brctl addbr br1brctl stp br1 onifconfig br1 10.0.2.1 netmask 255.0.0.0 up

设置桥的混杂模式

ip link set br1 promisc on

#给桥设置dhcp的server,连这个桥的自动获取ip,这步骤不是必须

#dnsmasq --strict-order --except-interface=lo --interface=br1 --listen-address=10.0.2.1 --bind-interfaces  --dhcp-range=10.0.2.100,10.0.2.254 --conf-file=""  --pid-file=/var/run/qemu-dhcp-br1.pid  --dhcp-leasefile=/var/run/qemu-dhcp-br1.leases --dhcp-no-override

设置ip转发,让vm中的网络能通外网

iptables -t nat -A POSTROUTING -s "10.0.2.0/255.255.255.0" ! -d "10.0.2.0/255.255.255.0" -j MASQUERADE

设置虚拟python环境,防止污染本机python

#virtualenv mysite#source mysite/bin/activate#pip install mod_pywebsocket

启动websocket服务

python -m mod_pywebsocket.standalone -d . --log-level=info -p 3000

js/network-websockets.js
中的代码连到websocket的server
例子代码
[url]http://killinux.com/jslinux-deobfuscated-network/[/url]

jslinux中的网络已经和服务器在一个网络了
虚拟ip 10.0.2.0段
网关 10.0.2.1 是服务器的桥br1
可以尝试
ping www.baidu.com
ping www.google.com

[img]http://dl2.iteye.com/upload/attachment/0123/0483/cb62b94f-a12c-3f57-b706-4e354de177c3.png[/img]

jslinux-deobfuscated-network相关推荐

  1. 使用桥接网络的jslinux

    测试demo在:http://www.hackernel.com/jslinux/ 本文代码在:https://github.com/killinux/jslinux-tap 2011年很火的jsli ...

  2. Distilling the Knowledge in a Neural Network 论文笔记蒸馏

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/bryant_meng/article/ ...

  3. CentOS7 service network start命令启动时报错解决方法

    service network start命令启动时报错: [root@localhost network-scripts]# service network start Starting netwo ...

  4. 面向Mobile device的CNN模型手工设计与NAS分析总结,MobileNet V1,V2,V3,Efficient,MNasNet以及Efficient network design

    手工方法和NAS的高效网络模型设计总结与分析 这篇文章主要关注对于移动端,资源受限平台的高效神经网络设计(Manually)和搜索(NAS). ​​​​​​高效的CNN设计不只是用在服务器,云端,资源 ...

  5. 基于caffe的度量学习实现(Siamese network Triplet network)

    基于caffe的度量学习实现,主要是孪生网络和三元组网络(Siamese network & Triplet network)实现图像的分类和度量. 包含数据集制作脚本,训练测试脚本和pyth ...

  6. Corner Proposal Network 论文阅读(2020ECCV)

    Introduction 引言 介绍了anchor base 和 anchor free 与one stage 和 two stage ,然后说通常认为的anchor base 有低召回的问题,anc ...

  7. 创建第一个 local network(I) - 每天5分钟玩转 OpenStack(80)

    在 ML2 配置文件中 enable local network 后,本节将开始创建第一个 local network. 我们将通过 Web GUI 创建第一个 local network. 首先确保 ...

  8. 【Qt】Qt中使用ssl时报错:qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method

    一.问题 在Qt中使用https,运行时报错: qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method 二.原因分析 SSLv2由 ...

  9. POJ 1236 Network of Schools(tarjan)

    Network of Schools Description A number of schools are connected to a computer network. Agreements h ...

  10. 阅读笔记 CCL: Cross-modal Correlation Learning with Multi-grained Fusion by Hierarchical Network

    总结 CCL: Cross-modal Correlation Learning with Multi-grained Fusion by Hierarchical Network Yuxin Pen ...

最新文章

  1. 给模型加装饰器Java,装饰器设计模式
  2. 递归循环子组件_算法一看就懂之「 递归 」
  3. 七大排序的个人总结(一)
  4. SpringOne 2017:与Pivotal聊大会、Spring、Reactor、WebFlux及其他
  5. GDCM:gdcm::FileChangeTransferSyntax的测试程序
  6. ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)
  7. drool 7.x 属性 : no-loop
  8. 解决PageHelper.startPage(page, size)后total和PageSize总是相等的问题
  9. 色彩校正中的Gamma(人眼亮度感应的非线性)
  10. 游戏更新-拖拉机升级 Android
  11. 可视化指标计算公式_技巧|1个小思路,解决不同量级间指标的可视化问题
  12. 喜欢吃鱼的朋友一定要转哦
  13. HTML 学习总结2 框架 表单
  14. 2019东南大学计算机考研录取,东南大学2019年硕士研究生拟录取名单公示-不带成绩...
  15. 第1关:ZooKeeper初体验
  16. 分布式 | 如何通过 dble 的 split 功能,快速地将数据导入到 dble 中
  17. libxml2经验--xmlReadFile
  18. 三维视觉论文阅读:RAFT2020双目光流
  19. 7-16 然后是几点(15 分)
  20. 【区块链】关于访问控制的一些思考

热门文章

  1. 用 Keynote 绘制 CNN 模型示意图
  2. SVM中如何防止过拟合
  3. Vim/Vi中保存文件并退出编辑器
  4. 基于机器学习的内容推荐算法及其心理学、社会学影响闲谈
  5. 小米首款翻盖折叠屏手机曝光 采用无开孔全面屏
  6. STM32F407VET6擦除内部flash时报“cannot halt the core”无法进入debug模式的问题
  7. vue.js 大小写转换
  8. 银河麒麟v10版本OpenDDS使用教程
  9. Servlet生命周期方法
  10. 中国社科院与美国杜兰大学金融管理硕士项目——努力追逐梦想的人最可爱