`
haoningabc
  • 浏览: 1475117 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jslinux-deobfuscated-network

阅读更多
基础知识
查看网络包
tcpdump -i eth0 -e -v -l
tcpdump -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.onload
net_handler
pc.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服务发送消息

最终实现

linux--->js(net0)--->filereader--->websocket--->服务(tap设备)---br网桥-->互联网


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


下载
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 br1
brctl stp br1 on
ifconfig 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
例子代码
http://killinux.com/jslinux-deobfuscated-network/


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



  • 大小: 46.4 KB
分享到:
评论

相关推荐

    Ascii-fluid-simulation-deobfuscated:Endoh Yusuke的“最复杂的ASCII流体”的最佳去混淆版本,混淆了C代码竞赛2012参赛作品

    什么 远藤雄介(Yusuke Endoh)的“最复杂的ASCII流体”的最佳模糊处理版本混淆了2012年C代码竞赛的参赛作品。 原始资料在。 在线上还有其他几个去混淆的版本,但是它们基本上只是去宏并且分解了一些结构。...

    安卓锁机教程java源码-My-Github-Stars:我的Github星星

    deobfuscated ](#Android deobfuscated ) [Android Packer](#Android Packer) [Android UnPacker](#Android UnPacker) [Android Anti-Emulator](#Android Anti-Emulator) [Android Vulnerability](#Android Vulne

    Biomusor_hack_minecraft_

    Russian hack cracked/deobfuscated

    eval-deobfuscator:JavaScript混淆处理的系统方法

    跑步npm installnode src/index.js特征去混淆器无法通过查找硬编码的函数名称来工作,因此无论更新如何,它们都应继续工作(除非混淆方案发生了显着变化)。 当前受支持和测试的脚本(如果使用此列表下方列出的任何...

    Leaf_unity_

    描述中的“Some dll deobfuscated”提示我们这些文件可能是从原始的混淆状态恢复过来的,目的是为了更好地理解和调试代码。 首先,我们要了解Unity的基本概念。Unity是一款跨平台的游戏开发工具,基于C#编程语言,...

    .net 脱壳工具

    •Deobfuscated files are runnable •Removes other obfuscator junk •Supports pure managed .NET files only •Fixes peverify errors created by the obfuscator •100% Open Source 脱壳后,想干嘛就干嘛...

    obfuscator:混淆一组数据的机制

    介绍 混淆器是用于混淆一组数据(例如字节)的Python包。 它提供了没有加密! 严格来说,它是“隐晦的安全”工具,用途...deobfuscated_bytes = obfuscator . deobfuscate_xor ( key = 0x66 , data = obfuscated_bytes

    MCPInterface

    obfuscatd 名称、srg 名称或 deobfuscated 名称定义示例:l、field_78399_n、hasColor都指向hasColor字段示例:a、func_78377_a、addVertex都指向addVertex方法搜索方法时,可能有多种方法与您的搜索相匹配。...

    httpcustom_srcdecomp_source_java_decompiled_android_

    描述 "Decompiled and cleaned up (deobfuscated) Java source of app HTTP CUSTOM handle with care :)" 强调了这个代码是经过反编译过程的,通常是因为原始的二进制APK文件没有提供源代码。反编译是将已编译的字节...

Global site tag (gtag.js) - Google Analytics