题首

Gh0st是一款开源的远程控制软件。界面友好,性能高效。网上流传很多版本,比如红狼,饭客,败笔,大灰狼版本以及多如牛毛的个人修改的如外星人,Drat等个人修改版本。但内核都是基于Gh0st3.6修改而成的。

Gh0st3.6下载地址见 http://huaidan.org/archives/2010.html

截止今天(2013年8月12日11:03:29),我能找到的最新版的Gh0st系列的源代码是 2013年1月份左右的《大灰狼远程》,还有《Gh0st2013》等。地址就不发出来了,大家可以在网络上搜索得到。

开篇明义:

本人水平十分一般,不敢班门弄斧,写这个系列原意是想记录在学习Gh0st中得到的一些感想和一些疑惑,正所谓好码共分享,疑义相与析。所以请高手绕路。

关于Gh0st代码的变迁:

1.服务端的运行方式

2010年时饭客论坛放出一份代码 《gh0st3.6饭客论坛免杀金牌版》

大家可以在我的资源里下载。

http://download.csdn.net/detail/witch_soya/4979548

大家可以看到这份代码里,服务端是采用了dll注入的形式,exe只是作为一个loader,大致的流程就是服务端的exe运行后就会释放一个dll,然后这个dll会执行所有的服务端的功能,而exe本身会自删除。在生成服务端的时候,只需要通过更新资源的方式去更新exe里面的动态库就可以了。

但是在网络最新找到的代码Gh0st2013里,几乎都是采用了单exe的方式运行。

因为我对于免杀之类并不精通。所以有如下疑问

Question1.为什么现在都采用单exe运行了,dll服务端不是更隐蔽吗?

2.客户端的界面修改

在Gh0st3.6的很多个版本的代码中,界面库采用了cj60lib 。这个库在用VS2010以上的版本编译时候会有很多重定义的错误。后来在《大灰狼远程控制》的代码里已经改为XTToolkitPro.lib的界面库了。还有《PcRat》的源代码中还采用了一种界面库Skin+ 。

界面欣赏

1 开源《Gh0st3.8》  --这个是网络上找到的Gh0st3.8的代码,我去掉了CJ60.lib界面库,返璞归真的效果。(by the way.大家不要找Gh0st3.75的代码了,都是骗人的,只有客户端,没有服务端)

2.我自己的Aero远程控制(还在写ing...其中遇到很多问题,所以在这里不敢敝帚自珍,请求SOS国际援助.^_^)

主界面

因为之前用一些界面库总是各种掣肘,自己写个界面库又没那个本事。后来就一不做二不休,全部采用gdi+贴图的方式来做的界面。比较花哨,完全是当做写着玩,所以没有考虑很多基于性能的因素。

有主机上线(这里我暂时屏蔽了右下角仿腾讯的弹出窗。)

我比较喜欢《上兴远程控制》,它将主程序和生成服务端分为两个独立程序来做的,我觉得这样挺好,这一点我采用了他的思路。采用了一种很2的办法来实现。就是生成服务端和修改服务端图标的代码用C++写在了一个动态库里,然后服务端生成工具用WPF来做的。如图

因为我这款远程控制的主要目标是尽可能用上自己所学到的编程技术,所以在旁人看来未免有些华而不实。这点我也受教了。

顺便贴上比较欣赏的上兴远程控制的界面。

还有其他的参考,如外星人,灰鸽子等等知名非知名软件。敬谢不敏。在接下来的回目中尽自己所知来剖析Gh0st的运行机理。

/*********************************************************************************************************************************************************

2013年8月12日11:48:24  Witch_Soya

**********************************************************************************************************************************************************

Gh0st整理资料1的更多相关文章

  1. 1、Android项目框架搭建 (分析需求、整理资料)

    闲来无事.想搭个框架试试 分析一般应用 将资料整理整理 粗略统计 须要下面资料 1.android-pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新 ListView.Vi ...

  2. AngularJS 整理资料

    AngularJS是Google开源的一款JavaScript MVC框架,弥补了HTML在构建应用方面的不足,其通过使用指令(directives)结构来扩展HTML词汇,使开发者可以使用HTML来 ...

  3. WEB安全工程师整理资料

    安全产品  NESS   Nmap   AWVS Burp APPScan   chopper  sqlmap   kali linux    具体的教程可以在SEcWiki 上搜索  使用公开的漏洞 ...

  4. Android 6.0 新特性 整理 资料来自网络

    Android 6.0新特性 Runtime Permissions Doze and App Standby Apache HTTP Client Removal BoringSSL Access ...

  5. Unity 3d C#和Javascript脚本互相调用 解决方案(非原创、整理资料,并经过实践得来)

    Unity 3d C#和Javascript脚本互相调用 解决方案 1.背景知识 脚本的编译过程分四步: 1. 编译所有 ”Standard Assets”, “Pro Standard Assets ...

  6. js window对象属相和方法相关整理资料

    window对象有以下方法: open close alert confirm prompt setTimeout clearTimeout setInterval clearInterval mov ...

  7. AJPFX循环结构整理资料

    Java语言基础(循环结构概述和for语句的格式及其使用)* A:循环结构的分类        * for,while,do...while * B:循环结构for语句的格式:*           ...

  8. android开发之动画的详解 整理资料 Android开发程序小冰整理

    /** * 作者:David Zheng on 2015/11/7 15:38 * *  网站:http://www.93sec.cc * *  微博:http://weibo.com/mcxiaob ...

  9. C语言零基础入门难发愁,那就快来看看这篇基础整理资料吧

    C语言程序的结构认识 用一个简单的c程序例子,介绍c语言的基本构成.格式.以及良好的书写风格,使小伙伴对c语言有个初步认识. 例1:计算两个整数之和的c程序: #include main() { in ...

随机推荐

  1. JavaScript基础-DAY1

    JavaScript介绍 你不知道它是什么就学?这就是一个网页嵌入式脚本语言...仅此而已 JavaScript组成 一个完整的 JavaScript 实现是由以下 3 个不同部分组成的: 核心(EC ...

  2. django创建model

    1.model实例 #!/usr/bin/python # coding:utf-8 from __future__ import unicode_literals from django.db im ...

  3. Git 简易使用指南及补充

    Git最简易的使用指南 助你开始使用 git 的简易指南,木有高深内容,;) 安装 下载 git OSX 版 下载 git Windows 版 下载 git Linux 版 创建新仓库 创建新文件夹, ...

  4. hdu 4547 LCA **

    题意:在Windows下我们可以通过cmd运行DOS的部分功能,其中CD是一条很有意思的命令,通过CD操作,我们可以改变当前目录. 这里我们简化一下问题,假设只有一个根目录,CD操作也只有两种方式: ...

  5. 追踪CPU跑满

    http://blog.donghao.org/2014/04/24/%e8%bf%bd%e8%b8%aacpu%e8%b7%91%e6%bb%a1/

  6. WebView具体介绍

    PART_0    侃在前面的话 WebView是Android提供给我们用来载入网页的控件.功能非常强大.我们经常使用的手机淘宝.手机京东的Androidclient里面大量使用到了WebView. ...

  7. RocketMQ的部署方式及持久化方式

    RocketMQ 的 Broker 有三种集群部署方式: 1. 单台 Master 部署: 2. 多台 Master部署: 3. 多 Master 多 Slave 部署:采用第 3 种部署方式时, M ...

  8. Starting nginx: nginx: [emerg] bind() to 0.0.0.0:8088 failed (13: Permission denied) nginx 启动失败

     Starting nginx: nginx: [emerg] bind() to 0.0.0.0:8088 failed (13: Permission denied)     nginx 启动失败 ...

  9. SpreadSheet数据导出为DataTable z

    devexpress也提供了一种将excel数据,而且可以指定区域进行转换,用起来相当灵活,本人将其解决方法分享如下(代码):          private DataTable export(Wo ...

  10. 十四种Java开发工具点评

    在计算机开发语言的历史中,从来没有哪种语言象Java那样受到如此众多厂商的支持,有如此多的开发工具,Java菜鸟们如初入大观园的刘姥姥,看花了眼,不知该何种选择.的确,这些工具各有所长,都没有绝对完美 ...