按月归档: 4月 2007

丽莎·凯莉 Lisa Kelly

       你或许未曾欣赏过大河之舞灿烂夺目的歌舞魅力 但你一定听过大河之舞背后那些天籁般的悠远乐音。被喻为塞尔特民谣新声天后的丽莎·凯莉(Lisa Kelly),以着极为纯净雄厚嗓音实力,击败诸位实力派歌手,雀屏中选为大河之舞一线女主唱,不用怀疑,如果你聆听过她的专辑,你将明白为何声音澄澈如 水晶般的丽莎,如何以着她多层次的歌声深度诠释宽广音域,遑论是大河之舞这般情节繁复的歌舞剧献声。在这张专辑里,丽莎除了原声呈现在大河之舞里的精湛歌 艺,精选Lift the Wings与Home and the Heartland两曲,另外更节选九首不同风格的曲目,一展凯尔特民谣多面的悠然曲风。开场之曲,丽莎即以妙的歌声引领乐迷进入人气票选第一的情歌民谣 Siuil A Run之中,时而开阔时而微渺的高音转折,让聆听者更感如沐春风。而被专业乐评评为"a nice surprise"的The Soft Goodbye更是将丽莎温柔的嗓音展现其中,感受一段美好的旋律,就像是爱乐者理想中的伊甸园。除此,专辑中Dubhdarra和The Deer’s Cry两曲让乐迷更能欣赏到名作曲家Shaun avey与丽莎的完美配合,转音结尾等在细节中一一流露默契,而从热门电影《魔戒》的May it Be,以及《神鬼战士》电影原声带中那首优美但也凄凉至极的Now We Are Free更是丽莎歌唱实力的最佳诠释。
        人生里,你或许已经错过许多事,也错过了大河之舞,但这次,你绝不可错过丽莎凯莉。

Read: 776

Windows操作平台下CGI的实现

华中理工大学图像识别与人工智能研究所     龚建勇

实现WWW服务器与客户的交互可以有多种途径,如CGI、ISAPI、JAVA、ASP等,CGI是一种大家都比较熟悉的一种实现上述功能的有效途径,本文将就如何在Windows平台下实现CGI功能作一介绍。  

一、CGI概述
1.CGI概念
CGI即通用网关接口(Common Gateway Interface),它是一个WWW服务器主机对外服务的标准接口。一般来说,一个CGI接口的功能就是在超文本文件和服务器主机应用程序间传递信息。

2.CGI程序语言
事实上,任何一种程序语言,只要能在服务器主机上利用CGI接口来编写应用程序,都可以叫作CGI程序语言。目前最为流行的CGI程序语言有四种:C、Shell、Perl和Visual Basic,其它一些语言也有许多人在用,如TCL、Frotran及AppleScript等。下文我们将介绍用C语言编写CGI的方法。

3.CGI程序的执行
CGI程序一般是个可执行程序。编译好的CGI程序一般要集中放在一个目录下。具体存放的位置随操作系统的不同而不同,例如UNIX系统下是放在cgi-bin子目录下,而在Windows操作下(注意,这里不包括NT4.0)以Webstar或Website作WWW服务器,CGI程序都放在cgi-win下。C GI程序的执行一般有两种调用方式:一种是通过URL直接调用,如:"http://gjy.sic.o.ml.or g/cgi-win/cgi.exe",在Netscape的URL栏里直接写入上述描述就可以调用该程序:另一种方式,也是主要的方式是通过交互式主页里的FORM栏调用,通常都是用户在填完一张表后按确认按钮启动CGI程序。

4.CGI工作的主要流程
CGI工作的主要流程是:1.通过HTML获取用户输入的信息;2.将用户输入的信息传给服务器主机应用程序(如数据库查询);3.将服务器处理结果通过HTML文件返回给用户。
二、Windows平台下CGI的工作原理
CGI主要的功能不外乎在服务器应用程序和客户之间传递信息。我们知道,通常CGI应用在服务器和客户端传递信息是通过输入输出流来实现的,如UNIX平台下的CGI,通过读取输入流Scanf来获取用户输入,读取输出流printf向用户输出结果。而Windows系统下CGI实现这一功能是通过文件系统来实现,即通过一个特定的输入文件来获取用户输入的信息,通过一个输出文件向用户传递结果。
这里这个输入文件是由WWW服务器生成的一个临时文件,里面包含了各种环境信息及用户输入信息,以key=value的形式给出,类似于Windows里的INI文件。下面以一个典型的该文件为例说明主要层的含义。
[CGI]
Request Protocol=HTTP/1.0
Repuest Method=POST
Executable Path=/cgi-win/cgitest.exe
Logical Path=/CGI
Physical Path=c:httpdhtdocsCGI
Server Software=Website /1.1(Shareware non-commercial License))
Server Name=gjy.sic.o.ml.org
Server Port=80
Server [email protected]
CGI Version=CGI/1.1 WIN
Remote Adress=2.02.114.2.182
[system〗
Debug Mode=No
Output File=D:hs06f12d.out
*/*=Yes
image/gif=Yes
image/x-xbitmap=Yes
image/jpeg=Yes
[Extra Headers〗
User-Agent=Mozilla/3.0 (Windows;I;32bit)
[Fotra rm Literal〗
textl=hello world
radio1=2
[Form External〗
field300chars=D:hs06f12d.000 300
fieldwith l inebreaks=D:hs06f12d.001 43
[Frm Huge〗
fiel d230
K=d:s06f12d.002 276920

下面将主要各栏的意义解释如下:
1.CGI
这一栏包含大部分的CGI信息,如要求的协议Request Protocol,提取用户信息的方式Me thod,执行程序的路径Exectable,服务器软件(Server Software),服务器名(Server Name), 端口号(server Port)等。
2.Accept栏
这一栏包含客户端可以接受的文件类型。
3.System栏
这一栏包含一些Widnows CGI使用的特别项目如输出(Output File),Content File
4.Form Literal资料栏
如果用户端的要求是使用POST方式,用户输入的资料会被解码后以key=value的方式放在这一栏里,这里的key即输入栏的变量名,value是用户输入的信息。
5.Form External栏
如果解码后的字串长度超过254byte,或字串中含有控制字元,系统会把这些信息存在该栏指定的临时文件里并指出长度。
三、CGI应用的实现
1、开发平台
首先操作系统应为Windows操作系统。我们用的是Windows 95。其次需要建立WWW服务器 ,我们用的是Website1.1。安装website并设置各相应目录后,将主页放入主目录中。
2、交互主页的制作
交互主页就是用户可以在主页上输入信息,而不是单纯仅供浏览的主页。一般来说,用户输入信息的形式有填写编辑框,点选无线按钮等选择框及选择下拉菜单等。下面是一个简单的例子。
<HTML>
<HEAD>
<TITLT>Form Sample</TITLE>
<HEAD>
<BODY>
<FORM ACTION="http://gjy.sic.o.ml.org/cgi/win/sample.exe"METHOD=POST>
A Text Input:<INPUT TYPE="text"><BR>
A Radio Input:
1<INPUT TYPE="radio"NAME="radiol"VALUE=1>
2<input type="radio" NAME="radiol"VALUE=2>
3<INPUT TYPE="radio"NAME="radiol"VALUE=3><BR>
OK Input:<INPUT TYPE="submit"VALUE="OK">
<INPUT TYPE="reset" VALUE="reset">
</FORM>
</BODY>
</HTML>
将上述标记存成HTML文件,该主页作好后,将其放在website设定的主目录中。然后用浏览器观看,将会看到结果。
其中FORM:说明一个交互式输入组合框。
ACTION:指定该FORM对应的CGI程序的URL。
INPUT:输入的形式,text为编辑框,radio为无线按钮等。
INPUT里的第一个参数TYPE表明输入的类型,第二个参数NAME表示该输入框代表的变量名。用户在此输入的信息将存在这个变量里。CGI程序也是通过这些变量提取用户输入信息。
3.CGI程序编写
前面我们说过,原则上CGI程序可以用任何语言编写,但在windows平台下,一般只有 C和VB是适合的。因为CGI程序是后台执行的back-end程序,C和VB都可以方便地生成无界面的 back-end程序。考虑到效率,我们用C语言来作CGI程序的编写。
Web server会通过Winexec来执行back-end,命令格式如下:
back-end-exe cgi-data-file content-file outputfile url-args
back-end-exe是CGI程序的完整路径,cgi-data-file是服务器产生的CGI资料文件,值为完整的路径:content-file是客户端发出的请求,其信息放在临时目录下的文件里,值为完整的路径;output-file是程序处理的结果,值为完整路径。url-args为URL中?后的参数。
服务器生成的临时输入文件在客户请求结束后即自动消失,所以CGI程序的第一步就是截取该文件,然后将所需的信息提取出来并过滤,最后得到的就是用户输入,然后对其作相应处理,如写入留言板或转交给数据库应用程序作查询处理。
值得一提的是VC和VB都提供了专用的从INI文件中提取信息的函数,即GetPrivateprofi leString()。
4、服务器应用程序
这一部分程序的功能就是对CGI转来的用户信息进行处理,处理的结果交给CGI程序的ou tput-file,通过CGI将其转交给用户。典型的服务器应用程序以数据库查询为代表。   

Read: 840

【转】RouterOS 下载地址 教程 资料

http://jjlong.zx3721.com/ros/ros2.96.rar (教程一)

http://jjlong.zx3721.com/ros/Mikrotik2.9.6详细教程.rar (教程二)

http://jjlong.zx3721.com/ros/ghost版ros2.97.rar


http://jjlong.zx3721.com/ros/firewall.rar

我用的防火墙也不知道是那个版本了网上传的版本太多了

http://jjlong.zx3721.com/ros/VPNJX.rar 基于VPN连接方式的虚拟双线教程

http://jjlong.zx3721.com/ros/子网计算器.rar   子网计算器做ROS的时候算不到的用下这个试试。。

自己的空间~   不可能不能下的。。如果顶的多还会更新的~

http://jjlong.zx3721.com/ros/RouterOS中文使用说明书.rar

http://jjlong.zx3721.com/ros/RouterOS中文手册1.doc

http://jjlong.zx3721.com/ros/RouterOS中文手册2.doc

ROShttp://jjlong.zx3721.com/ros/固定光纤IP+动态IPADSL实现双线负载.rar

http://jjlong.zx3721.com/ros/防火墙脚本.exe

http://jjlong.zx3721.com/ros/vpn的配置.exe

http://jjlong.zx3721.com/ros/PPPoE服务器配置.exe


http://jjlong.zx3721.com/ros/NAT配置.exe

http://jjlong.zx3721.com/ros/DHCP设置.exe

下面是几个ros版本

http://jjlong.zx3721.com/ros/Mikrotik-2.9.6.iso.rar

http://jjlong.zx3721.com/ros/mikrotik-2.9.26.iso.rar

http://jjlong.zx3721.com/ros/mikrotik-2.9.27.iso.rar

http://jjlong.zx3721.com/ros/mikrotik-2.9.7.iso.rar

http://jjlong.zx3721.com/ros/mikrotik-2.8.18.iso.rar

由于服务器问题ISO的文件不能下。。现在在ISO后加个RAR。下完后把RAR扩展名删了改成ISO。。抱歉。。

感谢原来贴主的大公无私。

原来的贴处:

http://bbs.txwm.com/dispbbs.asp?BoardID=190&ID=529866

Read: 796

病毒的本质

by Koms Bomb/CVC.GA

本文的目的,就是想说明写病毒其实是多么的容易。
一,病毒神话
我们先看看让大家“兴奋”、“激动”的病毒技术。
1,CIH,简直成了神话,CIH的作者也成为无数人的偶像。这神话,是AVer吹出来的,这偶像,只是中国人盲目崇拜的延续,外国人没这臭毛病。看看这个病毒里究竟有什么?1K多点的代码,再厉害能有什么?我觉得这个病毒唯一比较好的地方就是它的非常优化。这种优化,其实说白了也不难,只要稍微有些汇编编程经验,再加上一部指令手册(至少要有指令长度),再有足够的耐心,都可以做到。其它还有什么?进入Ring 0?早已有之,再说稍微懂些保护模式的人都知道利用GDT/IDT/LDT是可以进行特权转换的,常识问题。感染后文件大小不变?稍微了解PE格式的人都知道PE里有多少空地。使用VxD技术?Flash BIOS?只要能找到这些资料,有什么难的?VxD无非就是玩一些int 20h,Flash BIOS无非是写一些端口。调用中断,写端口,谁不会?但怎么调中断,写哪些端口,则需要知道相关的资料。我就写不出VxD为基础的病毒,我也不会Flash BIOS,因为我没有这方面的资料。
再看看时下“热门”的病毒技术。
2,跨平台病毒。跨Windows和Linux,同样是X86指令,有什么特殊的吗?基本上这种跨平台病毒,公用一部分变形之类的和OS无关的代码,而和OS有关的则是分开的。比如在Windows上就调用API,而在Linux上则用int 80h(没搞错中断号吧,我对Linux没什么研究)。其实就相当于两个病毒的合并。只要有了相关系统调用的资料,这种病毒显然很容易。其实写出针对不同CPU的病毒也不难,只要针对不同的文件感染不同的代码,然后把另外OS或CPU的代码做为数据不执行就行。顺便说一句,跨平台有什么用?有几个Linux机器上有PE文件的?又有几个Windows上有ELF文件的?
3,.net病毒。有什么新鲜吗?Java不是也有病毒吗?只要掌握MSIL汇编,写一个真正的.net病毒并不难。值得一提的是前一阵炒得火热的两个.net病毒其实根本难登大雅之堂。29A的那个是用X86汇编写的,稍微有点头脑的都知道,.net是架构在MSIL上的,是一种中间语言,X86汇编根本就和.net无关。我没仔细看这个病毒的代码,但我估计无非是对EPE格式有一些不同于PE的操作,总体来说,还是PE病毒。那个“17岁天才少女”的C#病毒,算是.net病毒吧,但值得一吹吗?你,说的就是你,去看看C#语法,再略微看一些.net framework,相信你也可以用C#写出一个可以把自己通过邮件发出去的程序,这就是时髦的.net病毒。
4,metamorphism。简直被AVer吹上天了。这东西说白了其实就是对自身代码进行重新编码。过程是,反汇编自己的代码,重新改写(比如mov eax,esi可以写成push esi;pop eax等等),插入垃圾代码。当然最好还要在下一代中删除垃圾代码。怎样判断垃圾代码?显然看到一条指令的目的操作数在以后没有被当作源操作数,就可以认为是垃圾。这东西玩弄的是机器代码技巧,只要在手边摆一部Intel的指令手册,再加上足够的耐心,想对代码重新编码,不难。但写这东西确实很繁琐,可以说是非常繁琐,写出的代码也很大,没有实用价值。以后有空我可能会重新考虑一个semi-metamorphism,也不难,但力求小,如果engine超过8K,我将放弃。

二,病毒的本质
大家之所以觉得病毒神秘,其实主要是因为大家没有对病毒没有了解,AVer又在大肆鼓吹(这种现象在中国尤为严重)。病毒到底是什么?
病毒是一段程序,它与普通程序的不同是它会复制自己,这是最主要的不同。复制有很多方法,直接copy,通过网络,插入别的可执行文件内部,等等,但这些方法的实现也是一段程序,并无特殊之处。
其实写病毒和写普通程序一样,不需要太高的智商。我为什么这么说?编程只是技术,这种技术所需要的基础知识是很浅的,可以说是非常浅,而且没有阶梯性。如果你要做物理学家,则一定要先学会中学物理,否则你就学不会大学物理。但如果你要做汇编程序员(听起来很高深的样子),你不必先学Basic,再学Pascal和C,最后学汇编,你完全可以从一开始就学汇编,完全没有问题。很多人以自己了解系统核心而自称高手,但这哪里高了?可能他花了三个月发现的一个系统核心的秘密,只是M$的一个程序员用一个小时写出来的。这一点也造就了很多“天才少年/少女”的神话,十几岁的小孩可以写出很好的程序或者病毒,让大家觉得真是天才。其实我敢肯定一个10岁的小孩对编程知识的理解能力不会比我差,甚至可能因为年龄小记忆力好而比我强,大家认为我智商有问题?也许吧,但小孩一样比你强。中国人对电脑界的“天才少年”总是津津乐道,其实只是愚蠢无知的表现。编程不需要智商,但需要资料,如果你不掌握一定数量的Win32 API,你很难写出像样的Win32程序。其实程序这东西还和物质力量有关,为什么外国有很多编程方面的“天才少年”?因为他们智商高?显然不是,中国人的智商至少不输于西洋人。主要是因为他们比较富裕,可以很早就接触电脑,并且有钱上网,上网当然可以获得许多有用的资料。靠,说到这里我不得不发牢骚,我正式开始能够经常接触电脑还是在2000年大学毕业以后。我在十几岁的时候,买本书都没钱,更别提电脑了,现在平时在家还是拿猫上网。
我说了这么多,其实一个结论就是,写病毒和写普通程序一样,不需要智商(当然智商也不能太低,如果智商低于80,除非真的是另类天才,否则还是别玩程序的好),但需要资料,这间接的需要物质力量。
所以说,病毒并不神秘,一点都不神秘,而且不难,可以说是相当简单,因为他们通常很小,最大也就几十K。我现在逐渐明白,哪怕是用Delphi这样易用的工具,开发大型程序,也是比较复杂比较困难的事,要有完善的设想,科学的模块划分,等等。
病毒虽然简单,但也有很好玩的地方,因为它的本质就是复制隐藏自己。如何更快的复制传播自己,如何隐蔽自己使得用户不容易发现病毒的踪影,是我的主要研究目标。这种目标显然违背了某些卫道士的“XX精神”(他们鼓吹的是黑客精神,但我不会黑,只会毒,是毒客而不是黑客),但这正是病毒的本质,如果脱离这些本质,那病毒也就不称之为病毒,而且也没必要研究病毒,有那精力不如做点应用软件。这种卫道士,鼓吹的是那种研究“新”、“高深”技术来写病毒的人,这样的病毒也就是AVer说的“学术病毒”、“概念病毒”。但这种病毒有什么用?除了给AVer吹牛的机会以外,没什么用。除了CIH以外,我上面说的基本都是这种病毒。大家可以看看,哪里有新技术?哪里有高深技术?
值得注意的是网上颇为流行江海客的那篇老文章“后英雄时代的AVER与VXER”,而且许多人都认为“受益菲浅”,为了不误导大家,我还是说两句。这篇文章总体来说就是在胡说八道。“AV企业的一般工程师,玩起softice的手法,远没有cracker熟练”?我确实不知道AVer是不是熟悉SI,但这句话有两个大问题,1),玩SI熟练就能代表水平?那好,我从现在开始天天玩SI,一个月后精通SI的各个功能,那我是不是成大师了?这简直是不合人类逻辑。 2),研究病毒一定要用SI?我调试病毒主要用VC,SI只是辅助,非常方便。“想象反病毒公司那些呆头呆脑的样本分析工程师,“**,原来病毒也可以这样编” 的惊呼,然后心情紧张的把样本交给公司中的前辈高人寻求指点他们已经心满意足。”更是胡说八道,有谁相信Symantec的在Nimda,Klez,BugBear爆发几个小时内就拿出解决方案的工程师是呆头呆脑的?”而是用了类似社交工程或者心理学一类的方法“,”当然,那些资深的VXER对此是不耻的,他们从不以自己的病毒传播如何广泛为荣誉,这些人的品性有些类似老牌黑客的绅士风范,这些人中确实也有我很欣赏的“,不是每个人都能做出成功的social engine的,好的S/E会得到全世界人的赞叹(套用卫道士的话,全世界人惊呼,”**,这他都能想得到“),一个人只要有耐心,可以对系统核心钻研很深,这没什么神秘,但好的S/E却需要灵光闪现。不能广泛传播的病毒显然不是好的病毒,无论它的技术如何高超(而且基本如我所说,并没有什么高超的技术),而且病毒和黑客不一样,黑客黑网站,真正有道德的不应该搞破坏,但他有能力可以破上10000个网站。有道德的病毒也不应该搞破坏,但有能力的病毒可以感染1000万台机器,这没什么不对,这是病毒应该做的,当然有能力感染不一定真的感染,不一定真的释放出去,但验证感染能力通常需要实战。还有就是他也是我说的那种卫道士,鼓吹那种黑客精神,其实如果大家都遵循他那种精神,那么结局就是大家整天都在研究不切实际的技术,根本就没有实用品出来。总体说,一个不懂得病毒本质,对病毒没有很深了解,没有写过病毒的人,不配写这种文章。
我一直对知道现在还在奉CIH和其它病毒为神明的无知之人感到气愤,在中国这种人太多了,所以就写了这篇文章,因为气愤,所以言语有不当之处,还望大家见谅,如果你对我感到气愤,可以理论,但不要骂人。

欢迎转载,请注明 by Koms Bomb/CVC.GA。
又:我发现深圳之窗网站曾从CSDN转了我的一篇文章,但去掉了所有作者信息,我给他们发信叫他们改正,也没有回音。这种行为是极度卑鄙无耻的,如果引起众怒将会玩火自焚!

Read: 638