题首

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. leetcode 奇偶链表 python

    要求空间复杂度O(1) 那就只能用指针不断改链表的指针, 不能建立新的内存 时间复杂度O(1) 一遍遍历 不能嵌套循环 我的思想是: 1 如果链表元素数量小于等于2个,那就无法操作 2 能操作的情况下 ...

  2. 内容播放colorbox

    1.需要的js (1)jquery (2)colorbox (http://www.jacklmoore.com/colorbox/ 下载文件夹,其中有js.css文件) //加载的时候注意文件的路径 ...

  3. Java 的类加载顺序

    Java 的类加载顺序 一.加载顺序:先父类后子类,先静态后普通 1.父类的静态成员变量初始化 2.父类的静态代码块 3.子类的静态成员变量初始化 4.子类的静态代码块 5.父类的普通成员变量初始化 ...

  4. CF1042C Array Product 分类讨论+贪心

    考虑有无负数(负数的个数为奇视作“有”,否则为“无”)和有无零 无负数无零,全部合并即可 无负数有零,那么把零合并起来,删掉零 有负数无零,把最大的负数找出来,删掉,合并剩余的数 有负数有零,把零和最 ...

  5. c语言scanf()停止接受输入及scanf("%c",&c)吃掉回车或者空格字符的问题

    scanf()函数接收输入数据时,遇以下情况结束一个数据的输入:(不是结束该scanf函数,scanf函数仅在每一个数据域均有数据,并按回车后结束).          ① 遇空格."回车& ...

  6. windows下安装awstats来分析apache的访问日志

    一.啰嗦两句 之前在Windows下用Apache时,也曾经配置过Awstats,然后换了工作,改用Linux+nginx,渐渐把Apache忘记了.又换了工作,又得用Apache,这回版本更新到2. ...

  7. python开发_tkinter_单选按钮

    这篇blog主要是描述python中tkinter的单选按钮操作 下面是我做的demo 运行效果: ====================================== 代码部分: ===== ...

  8. 移动端适配之REM

    随着手机等移动设备的普及,移动端带来的流量已经不可忽视,一个网站不只是只有pc的页面就足够了,移动端的适配已经势在必行.但是移动设备种类繁多,屏幕尺寸也千奇百怪,能不能找到一种方式可以适配所有的手机屏 ...

  9. 学习JavaEE,对比ASP.NET顿悟出一点点道理

    图一 图二 配套说明: 步骤一.客户端向web服务器(tomcat)发送http请求 步骤二.tomcat接收到请求后,将请求信息交给servlet容器,由servlet容器对请求进行封装(HttpS ...

  10. [置顶] Spring的自动装配

    采用构造函数注入,以及setter方法注入都需要写大量的XML配置文件,这时可以采用另一种方式,就是自动装,由Spring来给我们自动装配我们的Bean. Spring提供了四种自动装配类型 1:By ...