基于Android移动平台僵尸网络模拟工具设计与实现

移动端:基于Android系统开发的应用,表层应用是基于baiduMap 路线规划app

服务端:基于python web 开发框架 django 实现。

通信信道:基于第三方SDK Jpush推送消息+自己一套加密系统

 

推送原理:

1. 轮询方式(pull):实现消息队列 轮询频率问题
2.SMSpush):拦截消息 解析意图 成本高
3.持久链接(push):解决轮询性能问题
    XMPP协议:
    基于XML 
    核心部分:在网络上分片发布XML的流协议

Android客户端要点:

    1.传递信息
       1)传递信息是指僵尸应用可以获取移动终端的基本信息,如位置、服务商信息、号码以及个人基本信息等;
       2)发送心跳包,服务端通过对发来的包的解析来判断在线主机以及状态。
    2.解析命令
        Web服务器通过会通过相关信道对部分僵尸客户端发送命令,客户端解析服务端发送的数据转化成相应的指令。
    3.执行命令
    根据服务端发送的指令,指向相关的操作。


服务端:

1.连接过程:    连接过程就是Web服务器和Android客户端之间所建立的一种连接,以保证服务端可以监控到僵尸手机是不是在线。
    
2.命令推送过程:   当攻击者想执行某个操作时候,通过向Android手机推送命令的过程。


3.应答过程:       应答过程就是当命令推送过程之后,Android手机执行命令,向客户端返回响应的执行结果的过程。


4.断开过程:  断开过程即在响应过程完成以后,Web服务器和Android手机断开连接的过程。

项目代码后续传到 githubhttps://github.com/myjack 敬请关注

你可能感兴趣的:(android,map,推送,Jpush,僵尸网络)