怎么调试dll文件

200 views
Skip to first unread message

netmas...@126.com

unread,
Jun 7, 2007, 9:14:29 AM6/7/07
to ph4nt0m
我最近写了个dll。通过svchost加载。想让它以服务运行。
里面有响应服务的函数。但是程序中不知道什么地方出了错误。
我想调试一下。有什么好的方法吗。

本来想用svchost加载调试的。vc说svchost不包含调试信息。该怎么解决啊。
rundll32也是无法调试。
各位大侠有遇到这种情况的吗。


人 山 人 海 盛 景,尽 在 梦 幻 西 游

gy zy

unread,
Jun 7, 2007, 9:20:53 AM6/7/07
to ph4...@googlegroups.com
OutPutDebugString或者土办法,写文件

netmas...@126.com

unread,
Jun 7, 2007, 9:36:32 AM6/7/07
to ph4...@googlegroups.com
不错,这个想法很好。非常感谢。
还有没有其他的方法。
如果要编写以服务运行的dll。dll内部的函数执行过程是怎样的那。
如果是svchost加载dll文件的话,dllmain函数还能得到执行吗。
内部函数的执行顺序是不是以下方式

dllmain
ServiceMain //注册服务的函数
ServiceHandler//服务响应函数


需要在dllmain里调用servicemain函数吗。
还是操作系统自己主动去调用它。

我对以服务运行的dll文件内部函数运行的细节不太懂。




-------原邮件内容如下-------
发件人:"gy zy" <gyzy...@gmail.com>
收件人:ph4...@googlegroups.com
日期:Thu, 7 Jun 2007 21:20:53 +0800 (CST)
主题:[Ph4nt0m] Re: 怎么调试dll文件




OutPutDebugString或者土办法,写文件


On 6/7/07, netmas...@126.com <netmas...@126.com> wrote:
我最近写了个dll。通过svchost加载。想让它以服务运行。
里面有响应服务的函数。但是程序中不知道什么地方出了错误。
我想调试一下。有什么好的方法吗。

本来想用svchost加载调试的。vc说svchost不包含调试信息。该怎么解决啊。
rundll32也是无法调试。
各位大侠有遇到这种情况的吗。



人 山 人 海 盛 景,尽 在 梦 幻 西 游




劲 爆 150 万 同 时 在 线,众 人 追 捧 梦 幻 西 游

gougou_2

unread,
Jun 7, 2007, 10:00:21 AM6/7/07
to ph4...@googlegroups.com
写一个exe程序,这个exe程序只负责loadlibray你那个dll,然后在exe工程里面设置debug的路径就可以了。
 

gougou_2
2007-06-07

发件人: netmas...@126.com
发送时间: 2007-06-07 21:37:08
抄送:
主题: [Ph4nt0m]_Re:_怎么调试dll文件

netmas...@126.com

unread,
Jun 7, 2007, 10:11:03 AM6/7/07
to ph4...@googlegroups.com
我有个疑问,因为我的那个dll文件是要以服务运行的。那么loadlibray后,里面的服务响应函数还会不会执行那。

明天再试吧。我们下课了。老师要赶人了。已经10点了。晚安。






-------原邮件内容如下-------
发件人:"gougou_2" <goug...@126.com>
收件人:"ph4...@googlegroups.com" <ph4...@googlegroups.com>
日期:Thu, 7 Jun 2007 22:00:21 +0800 (CST)
主题:[Ph4nt0m] Re: [Ph4nt0m]_Re:_怎么调试dll文件




写一个exe程序,这个exe程序只负责loadlibray你那个dll,然后在exe工程里面设置debug的路径就可以了。




gougou_2
2007-06-07
劲 爆 150 万 同 时 在 线,众 人 追 捧 梦 幻 西 游 梦 幻 西 游,千 万 人 的 选 择,你 的 选 择

Docoocoo

unread,
Jun 7, 2007, 10:12:01 AM6/7/07
to ph4...@googlegroups.com
不行的话,在服务主函数开始里加个Beep函数,用Softice调试吧

在07-6-7,netmas...@126.com <netmas...@126.com> 写道:

GaRY

unread,
Jun 7, 2007, 10:12:18 AM6/7/07
to ph4...@googlegroups.com
直接用od之类的挂载加载此dll的exe,并且在dll的关键函数中用int 3软中断下来

在07-6-7,netmas...@126.com <netmas...@126.com> 写道:

Docoocoo

unread,
Jun 7, 2007, 10:15:48 AM6/7/07
to ph4...@googlegroups.com
服务安装,启动时都可以接管调试啊

之后它才运行服务主程序啊



 
在07-6-7,netmas...@126.com <netmas...@126.com> 写道:

fleshwound

unread,
Jun 7, 2007, 7:26:10 PM6/7/07
to ph4...@googlegroups.com
正解,注意下程序领空就行了。

netmas...@126.com

unread,
Jun 8, 2007, 12:54:45 AM6/8/07
to ph4...@googlegroups.com
总结一下,
方法一,自己写个exe调用dll 。gougou_2 ,fleshwound
方法二,加入输出功能,通过写文件方法,输出调试信息。gy zy
方法三,用beep方法,这个比较新颖。我没有想到过,有机会尝试一下。呵呵。Docoocoo
方法四,通过od或Softice加载。GaRY ,Docoocoo

我的疑问。
1,如果自己写exe加载dll,那么和系统的svchost加载在程序流程上会不会不太一样?是svchost加载的原理是怎么样的。
2,我还不清楚怎么勇od或softice加载,如果attach process的话,因为svchost是系统进程,会不会把系统搞崩溃。


一 起 来,150 万 人 同 时 在 玩 的 梦 幻 西 游

云舒

unread,
Jun 8, 2007, 2:28:33 AM6/8/07
to ph4...@googlegroups.com
谁说svchost是系统进程......加载你自己写的个dll,哪里算得上系统进程啊。
 

云舒
2007-06-08

发件人: netmas...@126.com
发送时间: 2007-06-08 12:55:10
抄送:
主题: [Ph4nt0m]_怎么调试dll文件

凌御

unread,
Jun 8, 2007, 3:01:13 AM6/8/07
to ph4...@googlegroups.com
我总结一下:
1 你想写个以svchost.exe来运行的dll,替换系统服务吧?
2 你不知道这个dll里的ServiceMain函数在被svchost.exe挂载的时候具体是如何的,和自己写exe挂载(LoadLibrary)是否有什么区别,自己用exe挂,是否会执行ServiceMain函数里的功能代码对吧?
 
不知道我是否理解错误:)
 
你能不能说说你的ServiceMain函数中具体要实现什么功能,建议你多看看别人写的框架,不知道你是用什么语言写这个dll,我最近也在写这样的一个东西,我是用delphi写的,也出现了一些问题。
主要是理解进程地址空间的问题和dll模块与宿主进程之间的关系以及内存的操作……
 
例如我在里面加入一个涉及到读写内存的函数就出错,因为没有理解好dll和exe进程空间的关系的原因。
 

凌御

unread,
Jun 8, 2007, 3:03:01 AM6/8/07
to ph4...@googlegroups.com
另外,建议你看看大侠写的那篇文章,加深对svchost.exe进程的了解
 

Docoocoo

unread,
Jun 8, 2007, 3:16:13 AM6/8/07
to ph4...@googlegroups.com
整理的一点关于服务的资料,
其中"Svchost相关"下的"创建Svchost.exe调用的服务原理与实践"一文讲的比较细,对你理解Svchost应该会有帮助。

 
在07-6-8,netmas...@126.com <netmas...@126.com> 写道:
Windows Services.rar

gougou_2

unread,
Jun 8, 2007, 3:18:02 AM6/8/07
to ph4...@googlegroups.com
这么说吧,我写过一个dll,是替换服务注入service的,就是用我说的exe调试dll的方式,很方便,没有什么问题。
 

gougou_2
2007-06-08

发件人: netmas...@126.com
发送时间: 2007-06-08 13:01:18
抄送:
主题: [Ph4nt0m]_怎么调试dll文件
 

凌御

unread,
Jun 8, 2007, 3:24:02 AM6/8/07
to ph4...@googlegroups.com
不知道你可明白什么是输出表
你自己写exe调用它 ,只是load的话,和用svchost调用不同,svchost调用不但load了,还调用了里面的函数,你如果想模仿svchost调用,也需要调用这个ServiceMain函数,但是还是有区别的
因为svchost是以服务启动的
具体你最好深入的看doooc推荐的那个实践
 
因为以服务启动的进程(特别是svchost进程)调用的dll,和你用普通exe调用一个dll是有区别的
函数中的代码 如果涉及到一些操作 最好你要明白这些操作 所处的环境
 
svchost不是是所谓的"系统进程",如果这个svchost调用的dll是你自己写的,就不是系统自身的
此时的svchost进程不是系统服务进程,只不过以服务启动罢了 挂了也就是这个进程挂了 和系统没关系
 
除非这个进程被别的服务共享……

凌御

unread,
Jun 8, 2007, 3:28:24 AM6/8/07
to ph4...@googlegroups.com
哈哈 win98玩sice和trw的时候就看到领空的概念了
后来学编程 才接触到进程内存空间

netmas...@126.com

unread,
Jun 8, 2007, 3:34:06 AM6/8/07
to ph4...@googlegroups.com
以前我关闭过svchost,导致系统重启,所以一直对svchost有点恐惧。不敢随便动它。~_~
云舒大哥是不是说,svchost不是系统进程。或者最起码,加载我的那个dll的svchost进程不会是系统级的。

多谢云舒大哥的指点,我先调试一下。实践实践。

凌御 对我的理解是基本正确的。以前写过服务运行的exe文件。现在想了解一下系统加载dll的过程。尤其是svchost加载的服务文件。我不清楚svchost调用dll的过程。其实这个疑问我存在很久了。到现在我才决定研究一下。以前我经常在学校帮助同学查杀病毒与木马,知道有的木马,是利用svchost的加载,通过替换服务运行的。所以想知道关于系统服务更多的知识。找不到那种木马的代码可以参考。我想自己编程实现一下。我用的是vc6。我对delphi不太熟悉。不然我们交流一下。

多谢Docoocoo 提供的资料。十分宝贵。我会仔细读一遍的。

-------原邮件内容如下-------
发件人:"云舒" <ph4nt0m...@gmail.com>
收件人:"ph4...@googlegroups.com" <ph4...@googlegroups.com>
日期:Fri, 8 Jun 2007 14:28:33 +0800 (CST)
主题:[Ph4nt0m] Re: [Ph4nt0m]_怎么调试dll文件




谁说svchost是系统进程......加载你自己写的个dll,哪里算得上系统进程啊。




云舒
2007-06-08




发件人: netmas...@126.com
发送时间: 2007-06-08 12:55:10
收件人: ph4...@googlegroups.com
抄送:
主题: [Ph4nt0m]_怎么调试dll文件

总结一下,
方法一,自己写个exe调用dll 。gougou_2 ,fleshwound
方法二,加入输出功能,通过写文件方法,输出调试信息。gy zy
方法三,用beep方法,这个比较新颖。我没有想到过,有机会尝试一下。呵呵。Docoocoo
方法四,通过od或Softice加载。GaRY ,Docoocoo

我的疑问。
1,如果自己写exe加载dll,那么和系统的svchost加载在程序流程上会不会不太一样?是svchost加载的原理是怎么样的。
2,我还不清楚怎么勇od或softice加载,如果attach process的话,因为svchost是系统进程,会不会把系统搞崩溃。



一 起 来,150 万 人 同 时 在 玩 的 梦 幻 西 游 人 山 人 海 盛 景,尽 在 梦 幻 西 游

凌御

unread,
Jun 8, 2007, 3:41:11 AM6/8/07
to ph4...@googlegroups.com
哦,用不用delphi没关系,其实都是在用api,无所谓的,思路大致理解起来都一样的
刚才问你是不是用delphi是因为手头有这样的框架可以提供给你参考。
以服务执行的exe相对简单,其实dll也不复杂,不过dll里的函数代码需要考虑下所处的环境(理解下进程空间、dll作为模块被调用的概念),因为dll本身是没有进程空间的,使用的都是宿主进程,在执行一些操作的时候,容易误解引起错误~我刚开始学编程就经常犯这样的错误:exe里的功能代码在dll里不可以用~~~

凌御

unread,
Jun 8, 2007, 3:44:12 AM6/8/07
to ph4...@googlegroups.com
系统里有很多个svchost进程,负责不同的服务,当然有些系统服务的dll是共享svchost的。
你可以用冰刃查看这些进程中的模块  对应服务所启动的dll就知道了
有些系统服务是可以关闭和停止,甚至是直接结束系统进程的,你结束bits等服务的svchost进程,是不会有什么问题 顶多这个服务不可用而已
 
而一些系统关键服务用到的svchost进程,你结束了当然挂了,表现为:倒计时或者直接重启、蓝屏
 
例如rpcss等……
 
自己替换的服务,一般不和别的服务共享进程的
 

netmas...@126.com

unread,
Jun 8, 2007, 4:33:22 AM6/8/07
to ph4...@googlegroups.com
先大体通读了一遍Docoocoo 给的资料。内容很深入的讲解了服务的调用。我的很多疑点都得到了澄清。还没有来得及实验。

凌御的话说的很好。感觉自己碰到的问题和他遇到过的问题都差不多。凌御,可以把你的代码发给我让我看看吗(不大好意思)。我想基本的程序流程和基本的数据结构我还是可以看懂的。以前因为灰鸽子才学了一点delphi。还是喜欢c++。呵呵。

我很喜欢系统和网络以及安全方面的编程。这些知识很少能在书本上找得到的。也许很多的技术只有hacker中才可以学到。

最后向大家确认一下以下问题

资料中说:
服务的代码必须要有一个一般的main或者WinMain函数。这个函数应该会马上调用StartServiceCrtlDispatcher函数。通过调用这个函数,你可以让SCM得到ServiceMain函数的指针,这样在SCM要启动该服务时,就可以调用它

那么在svchost调用dll文件时,还需要dllmain函数实现StartServiceCrtlDispatcher。因为我发现有的dll代码里根本就没有StartServiceCrtlDispatcher函数。是不是加载的进程可以直接得到ServiceMain函数的指针,所以就不需要那个StartServiceCrtlDispatcher了。


-------原邮件内容如下-------
发件人:"凌御" <mai...@gmail.com>
收件人:ph4...@googlegroups.com
日期:Fri, 8 Jun 2007 15:41:11 +0800 (CST)

主题:[Ph4nt0m] Re: [Ph4nt0m]_怎么调试dll文件




哦,用不用delphi没关系,其实都是在用api,无所谓的,思路大致理解起来都一样的
刚才问你是不是用delphi是因为手头有这样的框架可以提供给你参考。
以服务执行的exe相对简单,其实dll也不复杂,不过dll里的函数代码需要考虑下所处的环境(理解下进程空间、dll作为模块被调用的概念),因为dll本身是没有进程空间的,使用的都是宿主进程,在执行一些操作的时候,容易误解引起错误~我刚开始学编程就经常犯这样的错误:exe里的功能代码在dll里不可以用~~~

百 万 同 时 在 线,人 山 人 海 同 玩 梦 幻 西 游

netmas...@126.com

unread,
Jun 8, 2007, 4:36:29 AM6/8/07
to ph4...@googlegroups.com
请教gougou_2一下,自己写个exe文件,是不是只要实现这个exe调用dll中ServiceMain函数。







-------原邮件内容如下-------
发件人:"gougou_2" <goug...@126.com>
收件人:"ph4...@googlegroups.com" <ph4...@googlegroups.com>
日期:Fri, 8 Jun 2007 15:18:02 +0800 (CST)
主题:[Ph4nt0m] Re: [Ph4nt0m]_怎么调试dll文件





这么说吧,我写过一个dll,是替换服务注入service的,就是用我说的exe调试dll的方式,很方便,没有什么问题。




gougou_2
2007-06-08




发件人: netmas...@126.com
发送时间: 2007-06-08 13:01:18
收件人: ph4...@googlegroups.com
抄送:
主题: [Ph4nt0m]_怎么调试dll文件

总结一下,
方法一,自己写个exe调用dll 。gougou_2 ,fleshwound
方法二,加入输出功能,通过写文件方法,输出调试信息。gy zy
方法三,用beep方法,这个比较新颖。我没有想到过,有机会尝试一下。呵呵。Docoocoo
方法四,通过od或Softice加载。GaRY ,Docoocoo

我的疑问。
1,如果自己写exe加载dll,那么和系统的svchost加载在程序流程上会不会不太一样?是svchost加载的原理是怎么样的。
2,我还不清楚怎么勇od或softice加载,如果attach process的话,因为svchost是系统进程,会不会把系统搞崩溃。



一 起 来,150 万 人 同 时 在 玩 的 梦 幻 西 游 百 万 同 时 在 线,人 山 人 海 同 玩 梦 幻 西 游

throb

unread,
Jun 8, 2007, 5:10:00 AM6/8/07
to ph4...@googlegroups.com
加个DebugBreak()不就行了吗,直接用Windbg

在07-6-8,netmas...@126.com <netmas...@126.com> 写道:

gougou_2

unread,
Jun 8, 2007, 4:51:29 AM6/8/07
to ph4...@googlegroups.com
抱歉,这个我不清楚,因为没有实践过,但是我想普通dll是加载执行,因此exe需要loadlibray,那么如果这个dll是servicemain导出的话,是不是也可以.....等待牛人回答了,呵呵。
 

gougou_2
2007-06-08

发件人: netmas...@126.com
发送时间: 2007-06-08 16:36:40
抄送:
主题: [Ph4nt0m]_Re:_[Ph4nt0m]_怎么调试dll文件

凌御

unread,
Jun 8, 2007, 10:25:13 AM6/8/07
to ph4...@googlegroups.com
windows核心编程有很多你所想要知道的东西 呵呵~~
我也是最近才着手学编程
 

netmas...@126.com

unread,
Jun 8, 2007, 8:11:20 PM6/8/07
to ph4...@googlegroups.com
我对编程也很感兴趣。也是刚起步。咱们做个朋友吧。有什么资料可以互相交流,互相学习。以后你发信,我一定会尽量帮你找资料的。希望有一天,我们也能成为象云舒那样的大侠。呵呵。
我想你一定喜欢hack编程。我也收集了一些。部分截图在附件里,有需要的话,可以发给你。





-------原邮件内容如下-------
发件人:"凌御" <mai...@gmail.com>
收件人:ph4...@googlegroups.com
日期:Fri, 8 Jun 2007 22:25:13 +0800 (CST)

主题:[Ph4nt0m] Re: [Ph4nt0m]_怎么调试dll文件




windows核心编程有很多你所想要知道的东西 呵呵~~
我也是最近才着手学编程
资料.bmp

云舒

unread,
Jun 8, 2007, 10:01:37 PM6/8/07
to ph4...@googlegroups.com
晕,就PST而言,你可以说成为EMM那样的,成为eva那样的,成为刺头那样的,成为oyxin那样的,mix那样的,SHE那样的,luoluo那样的,and so on,千万不要成为我这样的............
 
至于写程序,多写就好了。需要注意的是----TK说的,"不要认为,要debug"。
 

云舒
2007-06-09

发件人: netmas...@126.com
发送时间: 2007-06-09 08:12:28
抄送:
主题: [Ph4nt0m]_[Ph4nt0m]_怎么调试dll文件

netmas...@126.com

unread,
Jun 8, 2007, 10:56:33 PM6/8/07
to ph4...@googlegroups.com

呵呵,我在幻影里呆的时间不长。刚发现幻影这个好地方没有多长时间,论坛就关闭了。依然记得当初用网站整站下载器下载整个论坛文章时候的情景。真的好激动。可惜的是,当时重装了一次系统,把资料给弄丢了。以后就再也没有机会下载了。在幻影里学到了不少的东西。看到幻影里的大侠们在上面发文章和讨论。真是十分敬佩而又羡慕。真希望有一天能成为他们那样。

后来碰巧得到了云舒的简历。呵呵。总算是对云舒大哥有个了解了。知道云舒大哥是武汉科技大学毕业的。我对武汉那边的大学非常向往。我有个老师是武汉大学毕业的,也是对信息安全很感兴趣,从她那儿得到了很多关于武汉那边的消息。听说武汉的学生给军方做过程序,我很是敬佩。

所以我对武汉那边出来的人都很重视的。在幻影求教问题。云舒大哥帮助最多。所以我的榜样就是云舒大哥了。我对其他的大侠不是太了解。可能以后慢慢就会熟悉了。最近就发现,luoluo也是很热心的。我以后会在学习的过程中多注意在幻影的大侠的。向幻影里所有的大侠学习。







-------原邮件内容如下-------
发件人:"云舒" <ph4nt0m...@gmail.com>
收件人:"ph4...@googlegroups.com" <ph4...@googlegroups.com>
日期:Sat, 9 Jun 2007 10:01:37 +0800 (CST)
主题:[Ph4nt0m] Re: [Ph4nt0m]_[Ph4nt0m]_怎么调试dll文件





晕,就PST而言,你可以说成为EMM那样的,成为eva那样的,成为刺头那样的,成为oyxin那样的,mix那样的,SHE那样的,luoluo那样的,and so on,千万不要成为我这样的............

至于写程序,多写就好了。需要注意的是----TK说的,"不要认为,要debug"。




云舒
2007-06-09




发件人: netmas...@126.com
发送时间: 2007-06-09 08:12:28
收件人: ph4...@googlegroups.com
抄送:
主题: [Ph4nt0m]_[Ph4nt0m]_怎么调试dll文件

我对编程也很感兴趣。也是刚起步。咱们做个朋友吧。有什么资料可以互相交流,互相学习。以后你发信,我一定会尽量帮你找资料的。希望有一天,我们也能成为象云舒那样的大侠。呵呵。
我想你一定喜欢hack编程。我也收集了一些。部分截图在附件里,有需要的话,可以发给你。




-------原邮件内容如下-------
发件人:"凌御" <mai...@gmail.com>
收件人:ph4...@googlegroups.com
日期:Fri, 8 Jun 2007 22:25:13 +0800 (CST)
主题:[Ph4nt0m] Re: [Ph4nt0m]_怎么调试dll文件




windows核心编程有很多你所想要知道的东西 呵呵~~
我也是最近才着手学编程


劲 爆 150 万 同 时 在 线,众 人 追 捧 梦 幻 西 游 劲 爆 150 万 同 时 在 线,众 人 追 捧 梦 幻 西 游

GaRY

unread,
Jun 8, 2007, 11:21:11 PM6/8/07
to ph4...@googlegroups.com
我们成立云舒luoluofans团吧
啊。刺他们要打我,闪

 
在07-6-9,netmas...@126.com <netmas...@126.com> 写道:

netmas...@126.com

unread,
Jun 9, 2007, 12:03:15 AM6/9/07
to ph4...@googlegroups.com
呵呵,榜样归榜样,是我们学习和敬佩的目标,而不是追捧的对象。
我们不要堕落成fans。

其他的大侠同样有很多闪光的优点,只是我们对他们接触的时间少,不知道吧了。
我相信幻影里的大侠,每个人都有自己独特鲜明的个性。
希望大家都能在这个幻影的旗帜下学到东西。

我们不要乱灌水了。话题撤的有点远了。~_~
GaRY (好像是我非我)有点点bs我的意思。
呵呵,小弟马上改。
百 万 玩 家 同 玩 的 乐 园,人 气 爆 发 的 梦 幻 西 游

kylinpoet

unread,
Jun 9, 2007, 12:34:54 AM6/9/07
to ph4...@googlegroups.com
你是mm嘛?不是的话
     yunshu的亮光应该被它的 皇后 没收关了
是的话
     有可能还有一丝亮光漏出来
^_^

GaRY

unread,
Jun 9, 2007, 5:55:05 AM6/9/07
to ph4...@googlegroups.com
呵呵,是我爱开玩笑
我还是少点灌水吧。已经被云舒bs过了。
反省,反省

 
在07-6-9,kylinpoet <kyli...@gmail.com> 写道:

netmas...@126.com

unread,
Jun 9, 2007, 6:30:33 AM6/9/07
to ph4...@googlegroups.com
算了。我们不要再扯话题了。不然,以后就没有大侠再敢给我们帮忙了。结贴,结贴。呵呵。

我拿Docoocoo 给我的service资料看了一遍。用上面提到的一个例子作实验。
发现代码好像有点问题。可能是我有误解吧。毕竟我是个小菜。

在里面的InstallService函数中,作者用了CreateService(line 228)创建服务。问题就是如果那个服务本身存在的话,就会出错。代码在附件里。

首先,我不用他的InstallService函数功能。我手工替换了sens服务。把它的dll文件改成了我的。
结果发现用呢net start sens ,启动的还是以前没有替换的服务的dll文件。我的文件没有被加载。为什么那?

我采取的第二种方法是先把服务删掉。这样就不会出错了。这样成功。但是bug很多。日志文件没有输出内容。用net start sens却提示无法启动,而实际上却启动了。发现dll文件已经被加载,但是服务却显示是没有启动。

开始怀疑自己人品有问题了。中午做了个梦,梦见日志文件有输出了。醒来后发现还是空的。









test.txt

大风

unread,
Jun 9, 2007, 12:16:00 PM6/9/07
to ph4...@googlegroups.com

 

朕刚出去旅游了两天,回来看见这里好热闹啊

 

那个dll的问题讨论的很有气氛呀!呵呵

 

另外搞个人崇拜就不必要了,大家都是人,都是爹妈生的,闻道有先后,术业有专攻而已,一起多讨论互相学习

 

最后少灌水,哈哈!

 

 

 

 

[Ph4nt0m]

[Ph4nt0m Security Team]

                  @ph4nt0m

          Email:  ax...@ph4nt0m.org

          PingMe:

          === Ultimate Hacking ===

          === XPLOITZ ! ===

          === #_# ===

#If you brave,there is nothing you cannot achieve.#

 

 

 


发件人: ph4nt0m@googlegroups.com [mailto:ph4nt0m@googlegroups.com] 代表 GaRY
发送时间: 2007年6月9 17:55
收件人: ph4nt0m@googlegroups.com
主题: [Ph4nt0m] Re: [Ph4nt0m]怎么调试dll文件

lxd1...@gmail.com

unread,
Jun 10, 2007, 2:07:22 PM6/10/07
to Ph4nt0m
"我采取的第二种方法是先把服务删掉。这样就不会出错了。这样成功。但是bug很多。日志文件没有输出内容。用net start sens却提示无法
启动,而实际上却启动了。发现dll文件已经被加载,但是服务却显示是没有启动。"


这样更有迷惑性^_^,看上去好想灰鸽子木马上面的那个服务,本来是启动的但是打开SERVICES.MSC看上去却没有写启动。

用OPERA收邮件,时间打乱了看了半天不是很清除,就上来GOOGLE 上面看了。学到了很多东西。

把DLL放到共享的服务组里面就达到你我们要的效果了。

lxd1...@gmail.com

unread,
Jun 10, 2007, 2:15:08 PM6/10/07
to Ph4nt0m
跟你遇到一样的问题了,上次写创建服务程序的时候在程序里面创建进程一个记事本文件,却打开的是NOTEPAD.EXE,关闭的时候还不能关闭,是服务
的,吼吼~~

netmas...@126.com

unread,
Jun 10, 2007, 10:24:15 PM6/10/07
to ph4...@googlegroups.com
风大侠也出面了,呵呵。小弟马上改。
不过小弟对幻影的敬佩那是如滔滔江水,连绵不绝。。。。。

在测试过程中,我一直用超级巡警辅助操作服务。发现只要一修改服务的dll文件,超级巡警马上就把它列到了非系统服务里。难道超级巡警是通过对比服务原来的信息来进行判断的吗。

最近要回学校答辩了,所以这个dll文件,我需要等n天才能继续调试。
不过我记得黑客x档案里有过关于编写服务的文章,写的很好。回去之后顺便再整理一下。

经过了在幻影里那么多朋友和大侠的支持,我的关于木马查杀的毕业设计终于做出来了。
我把对幻影的感谢写在了答辩用的ppt里了。呵呵。
马上就要毕业了,对学校真有种恋恋不舍的感情。


----原邮件内容如下----
发件人:"lxd1...@gmail.com" <lxd1...@gmail.com>
收件人:"Ph4nt0m" <ph4...@googlegroups.com>
日期:Mon, 11 Jun 2007 02:15:08 +0800 (CST)

主题:[Ph4nt0m] Re: [Ph4nt0m]_怎么调试dll文件


凌御

unread,
Jun 11, 2007, 9:40:01 PM6/11/07
to ph4...@googlegroups.com
建议你注意一下有的服务停止后,dll不从内存卸载的问题。
建议你用bits服务测试。
有的服务例如sens在停止后,你替换了,再启动的,可能还是以前的dll(即使你改了名字)。
磁盘映像和内存的映射关系,在服务停止后,可能还没解除(个人猜测)。
总之,还是用bits测试好~

 
在07-6-9,netmas...@126.com <netmas...@126.com> 写道: