Board logo

标题: [推荐]最详细的黑客教程--第七部 [打印本页]

作者: blackking    时间: 2004-5-9 16:10     标题: [推荐]最详细的黑客教程--第七部

  第二十四章------关于UNIX/Linux 
简单说明:
UNIX/Linux无疑是比windows更历史悠久更出色的OS。可惜缺少了一些“平易近人”,让许多人望而却步。这里也不打算讲些什么,想学它的人不如从学习怎么找相关资料开始吧,呵呵。不过还是建议初学者从WINDOWS入手比较好一些,而且按市占有率看,也应该多接触WINDOWS系统。当然抽空熟悉一下U系统也是不错的选择,这里简单介绍大家一点资料。  
相关资料:
rootkit综述 http://www.sixthroom.com/ailan/f ;... 3&RootID=332&ID=332
Linux 使用技巧33条 http://www.sixthroom.com/ailan/f ;... 3&RootID=335&ID=335
Linux配置与优化经验谈 http://www.sixthroom.com/ailan/f ;... 3&RootID=337&ID=337
Unix**初学者指导 http://www.sixthroom.com/ailan/f ;... 3&RootID=336&ID=336
入侵UNIX http://www.sixthroom.com/ailan/f ;... 3&RootID=339&ID=339 
相关网址:
蓝森林 http://lslnet.com/linux/
Linux大本营 http://lydr.myrice.com/ ;
LINUX-AID技术支持中心 http://www.linuxaid.com.cn/
LINUX-NOW http://new.linuxnow.com/
台湾LINUX协会 http://www.linux.org.tw/
GNU的官方网站 http://www.gnu.org/
中国科学技术大学Linux使用者协会
http://lug.ustc.edu.cn/ 
第二十五章------溢出 
简单说明:
溢出对我们这些小鸟们属于比较高级的玩意了。所以在这里也不准备多提,否则就违反了这篇文章写给初学者的初衷了。
缓冲区溢出
缓冲区是内存中存放数据的地方。在程序试图将数据放到计算机内存中的某一位置,但没有足够空间时会发生缓冲区溢出。
缓冲区是程序运行时计算机内存中的一个连续的块,它保存了给定类型的数据。问题随着动态分配变量而出现。为了不用太多的内存,一个有动态分配变量的程序在程序运行时才决定给他们分配多少内存。如果程序在动态分配缓冲区放入太多的数据会有什么现象?它溢出了,漏到了别的地方。一个缓冲区溢出应用程序使用这个溢出的数据将汇编语言代码放到计算机的内存中,通常是产生root权限的地方。单单的缓冲区溢出,并不会产生安全问题。只有将溢出送到能够以root权限运行命令的区域才行。这样,一个缓冲区利用程序将能运行的指令放在了有root权限的内存中,从而一旦运行这些指令,就是以root权限控制了计算机。总结一下上面的描述。缓冲区溢出指的是一种系统攻击的手段,通过往程序的缓冲区写超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,使程序转而执行其它指令,以达到攻击的目的。据统计,通过缓冲区溢出进行的攻击占所有系统攻击总数的80%以上。造成缓冲区溢出的原因是程序中没有仔细检查用户输入的参数。例如下面程序:?/P>
  example0.c
  -----------------------------------------------------------
  void function(char *str) {
  char buffer[16];
  
  strcpy(buffer,str);
  }
  ----------------------------------------------------------- 
上面的strcpy()将直接把str中的内容copy到buffer中。这样只要str的长度大于16,就会造成buffer的溢出,使程序运行出错。存在象strcpy这样的问题的标准函数还有strcat(),sprintf(),vsprintf(),gets(),scanf(),以及在循环内的getc(),fgetc(),getchar()等。在C语言中,静态变量是分配在数据段中的,动态变量是分配在堆栈段的。缓冲区溢出是利用堆栈段的溢出的。一个程序在内存中通常分为程序段,数据端和堆栈三部分。程序段里放着程序的机器码和只读数据,这个段通常是只读,对它的写操作是非法的。数据段放的是程序中的静态数据。动态数据则通过堆栈来存放。在内存中,它们的位置如下: 
  
  /――――――――\  内存低端
  |程序段|
  |―――――――――|
  |数据段|
  |―――――――――|
  |堆栈|
  \―――――――――/内存高端 
堆栈是内存中的一个连续的块。一个叫堆栈指针的寄存器(SP)指向堆栈的栈顶。堆栈的底部是一个固定地址。堆栈有一个特点就是,后进先出。也就是说,后放入的数据第一个取出。它支持两个操作,PUSH和POP。PUSH是将数据放到栈的顶端,POP是将栈顶的数据取出。在高级语言中,程序函数调用和函数中的临时变量都用到堆栈。参数的传递和返回值是也用到了堆栈。通常对局部变量的引用是通过给出它们对SP的偏移量来实现的。另外还有一个基址指针(FP,在Intel芯片中是BP),许多编译器实际上是用它来引用本地变量和参数的。通常,参数的相对FP的偏移是正的,局部变量是负的。当程序中发生函数调用时,计算机做如下操作:首先把参数压入堆栈;然后保存指令寄存器(IP)中的内容,做为返回地址(RET);第三个放入堆栈的是基址寄存器(FP);然后把当前的栈指针(SP)拷贝到FP,做为新的基地址;最后为本地变量留出一定空间,把SP减去适当的数值。 
  下面举个例子:
  example1.c:
  ------------------------------------------------------------
  void function(int a, int b, int c) {
  char buffer1[5];
  char buffer2[10];
  }
  
  void main() {
  function(1,2,3);
  }
  ----------------------------------------------------------- 
为了理解程序是怎样调用函数function()的,使用-S选项,在Linux下,用gcc进行编译,产生汇编代码输出: 
  $ gcc -S -o example1.s example1.c 
  看看输出文件中调用函数的那部分: 
  pushl $3
  pushl $2
  pushl $1
  call function 
  这就将3个参数压到堆栈里了,并调用function()。指令call会将指令指针IP压入堆栈。在返回时,RET要用到这个保存的IP。在函数中,第一要做的事是进行一些必要的处理。每个函数都必须有这些过程: 
  
  pushl %ebp
  movl %esp,%ebp
  subl $20,%esp 
这几条指令将EBP,基址指针放入堆栈。然后将当前SP拷贝到EBP。然后,为本地变量分配空间,并将它们的大小从SP里减掉。由于内存分配是以字为单位的,因此,这里的buffer1用了8字节(2个字,一个字4字节)。Buffer2用了12字节(3个字)。所以这里将ESP减了20。这样,现在,堆栈看起来应该是这样的。 

  低端内存高端内存
  buffer2 buffer1 sfp ret a b c
  < ------ [ ][ ][ ][ ][ ][ ][ ]
  栈顶栈底
  
  缓冲区溢出就是在一个缓冲区里写入过多的数据。那怎样利用呢,看
一下下面程序:
  
  
  example2.c
  -----------------------------------------------------------
  void function(char *str) {
  char buffer[16];
  
  strcpy(buffer,str);
  }
  
  void main() {
  char large_string[256];
  int i;
  
  for( i = 0; i < 255; i++)
  large_string = A;
  
  function(large_string);
  }
  ------------------------------------------------------------ 
这个程序是一个经典的缓冲区溢出编码错误。函数将一个字符串不经过边界检查,拷贝到另一内存区域。当调用函数function()时,堆栈如下:
  
  低内存端buffer sfp ret *str高内存端
  < ------ [ ][ ][ ][ ]
  栈顶栈底 
很明显,程序执行的结果是"Segmentation fault (core dumped)"或类似的出错信息。因为从buffer开始的256个字节都将被*str的内容A覆盖,包括sfp, ret,甚至*str。A的十六进值为0x41,所以函数的返回地址变成了0x41414141, 这超出了程序的地址空间,所以出现段错误。可见,缓冲区溢出允许我们改变一个函数的返回地址。通过这种方式,可以改变程序的执行顺序。 
由于是简单介绍给大家熟悉一下,所以在这里不给出软件了,如果大家有需要的话,可以在附录中找到。 
相关资料:
缓冲区溢出及其攻击 http://www.sixthroom.com/ailan/f ;... 3&RootID=312&ID=312
缓冲区溢出原理分析 http://www.sixthroom.com/ailan/f ;... 3&RootID=313&ID=313
更多资料请到 www.sixthroom.com 

----------------------------------------------
第二十六章------OICQ 
简单介绍
关于QQ我不想说什么了,一种既时通讯软件,上网的人都知道。现在常见的问题,无非就是谁能给我个QQ?谁能帮我偷个QQ?我的QQ了,谁能帮我偷回来?怎样偷QQ?个人认为偷QQ这种事,是对**精神的一种侮辱,请不要在问这种问题,更不要问我这种问题,因为我对偷QQ的事特别讨厌。如果你的号码真的被偷了,哪也只能说明你没安全意识,你可以试试下面给出的地址,时间可能会慢一点,不过也只有等了,如果实在找不回来,哪也只能当做一个教训了。下次注意吧。必竟黑过来黑回去的没什么意思,好了,下面的地址是腾讯的服务区,有事就到哪里去吧: 
相关网站
被盗号码申诉 http://service.tencent.com/service/request.shtml
QQ密码保护申请 http://service.tencent.com/reg/register.shtml 

附录 
关于常用工具的使用
简单说明:  
**的工具就像战士的枪,一定要熟练掌握灵活应用。这里给出一些常用的工具方便新手下载。其他工具还是自己搜一下吧。一般命令行下的工具是自带简单的使用说明(即usage)的,当输入错误参数或不输参数就会显示。不要因为帮助是英文的就放弃学习。给出的软件使用教程,总会有没讲到或讲的不够细致的地方。遇到问题请首先尝试自己解决。实在不行的话,就请把握住问题的要点,清楚地表达出来。补充一般命令行下的软件直接打这个软件名,不加任何参数(还有一部份加/?)就会显示软件帮助及参数的。 
相关工具:
命令行工具:
ShutDown NOW! 4.51 远程重起的小工具 http://download.pchome.net/php/d ;... e/shdn451.zip&svr=4
pstools系列工具 包括pslist,pskill,psinfo等实用的工具 http://www.cnno.org/down/download.asp?id=67&downid=1 ;内有英文说明,比较易懂。
Windows NT/2000 自动攻击探测机 http://www.cnno.org/down/download.asp?id=196&downid=1
webcracker4.0 http://www.cnsq.net/sq88/down/show.asp?id=248&down=1
SMBcrack V4 暴力破解2000共享密码 http://www.cnsq.net/sq88/down/show.asp?id=295&down=1 ;
sc.exe 服务管理工具 http://www.ndsafe.com/fires/SC.zip
attacker.zip Windows下的监控端口捕获 http://www.ndsafe.com/fires/attacker.zip
nmap-3.00-win32 最优秀的扫描工具 http://gd.tuwien.ac.at/pc/bazar/nmap/nmap-3.00-win32.zip ;
regshell 命令行方式下的交互式注册表编辑工具 http://www.feelids.com/bbs/viewt ;... ment&tid=42&pid=137
ScanloOK 1.0 漏洞扫描器 http://www.chinesehack.org/down/show.asp?id=1559&down=1 ;
Win2k.Svr.ResKit完全安装版 微软出的“**”工具包 http://www.microsoft.com/windows ;... t/tools/default.asp
NC **的瑞士军刀 http://www.atstake.com/research/tools/nc11nt.zip
HScan V0.70 http://www.cnhonker.net/Down/show.php?id=56&down=1
Ping Backdoor V0.41 http://www.cnhonker.net/Down/show.php?id=55&down=1 
图形界面工具:
superscan3.0 端口扫描,速度快 http://ice.prohosting.com/v60/dow/superscan.rar ;
winfingerprint-0.5.3 http://www.cnhonker.net/Down/show.php?id=25&down=1
x-scan 2.3 综合扫描工具 http://www.xfocus.net/download.php?id=366
流光4.7版WINNT/2000 http://www.netxeyes.org/fluxay47/fluxay47build3200setup.exe
X-Port http://www.xfocus.net/download.php?id=327
SQLTools http://www.xfocus.net/download.php?id=351
TFTP服务器 简单的文件传输工具,利用Unicode漏洞必备 http://arm.533.net/hack/tftpd32.zip
DameWare3.66.0.0汉化注册版 强大的远程控制软件 http://www.sixthroom.com/down/show.asp?id=90&down=1 ;
l0pht4.0 破解SAM的著名工具(带注册机) http://www.cnsq.net/sq88/down/show.asp?id=443&down=1 ;
strcm-vnc strcm自动装载VNC远程图形控制 http://www.cnsq.net/sq88/down/show.asp?id=281&down=1 ;
Remote Administrator v2.1 远程控屏工具 http://www.gyfly.com/asp/soft/download.asp?id=302&downid=3 ;
DomyRun 1.0 http://www.cnsq.net/sq88/down/show.asp?id=714&down=1
Lithium v1.03 http://www.cnsq.net/sq88/down/show.asp?id=678&down=1
追捕! V1.70 Build 1001 Beta http://www.cnsq.net/sq88/down/show.asp?id=618&down=1
追捕! 数据升级包 Build 2002.10.01 http://www.cnsq.net/sq88/down/show.asp?id=617&down=1 

相关帖子:
SuperScan使用详解 http://www.sixthroom.com/ailan/f ;... 5&RootID=315&ID=315
使用strcm自动装载VNC远程图形控制 http://www.sixthroom.com/ailan/f ;... 2&RootID=317&ID=317
DameWare NT Utilities 使用心得 http://www.sixthroom.com/ailan/f ;... 2&RootID=318&ID=318
QQ动态代理IP技术 http://www.sixthroom.com/ailan/f ;... 2&RootID=319&ID=319
Nmap扫描器的使用 http://www.sixthroom.com/ailan/f ;... 3&RootID=320&ID=320
Nmap详细使用说明 http://www.sixthroom.com/ailan/f ;... 3&RootID=321&ID=321
“网络神偷”使用说明 http://www.sixthroom.com/ailan/f ;... 5&RootID=322&ID=322
nc使用技巧 http://www.sixthroom.com/ailan/f ;... 5&RootID=323&ID=323
DameWare NT Utilities教程 http://www.sixthroom.com/ailan/f ;... 5&RootID=324&ID=324
L0phtcrack 3.0 图解使用教程 http://www.sixthroom.com/ailan/f ;... 5&RootID=325&ID=325
Ifconfig网络配置工具详解 http://www.sixthroom.com/ailan/f ;... 5&RootID=326&ID=326
win2000server终端服务自带的一些工具的简介
http://www.sixthroom.com/ailan/f ;... 2&RootID=327&ID=327
关于 radmin 的远程安装 http://www.sixthroom.com/ailan/f ;... 2&RootID=328&ID=328
SC介绍和教程 http://www.sixthroom.com/ailan/f ;... 2&RootID=329&ID=329
代理猎手(Proxy Hunter)使用教程 http://wwwb.pconline.com.cn/pcedu/soft/doc/10312/1.htm ;
OICQ使用教程 http://www.cfan.net.cn/E-zine/2002_06/study/ ;(绝对值得一看)
冰河的使用教程 http://www.ttian.net/article/show.php?id=103
破解工具AccessDiver的使用方法 http://www.sixthroom.com/ailan/f ;... 5&RootID=330&ID=330
(在下面提供的下载教程里面也有很多软件的使用方法,大家可以参照) 

附录 
关于教程
我收集了一些教程的下载地址。看教程重要的是学会其中的思路和创新,消化吸收成为自己的东西,并举一反三。不要当它们是资料库,要用时是很难找到想找的文章的。不同教程里会有文章重复,就当是强化记忆再看一遍。就像前辈说的一样,看教程看实例重要的是要掌握及培养思路,当你的头脑中有一个清晰的思路后,哪你在学习起来就会事半功倍,“工作”起来也会少走不少弯路。有时间我会把这篇文章里所有的资料做成一份电子文档。希望大家能够喜欢。
(排名不分先后,^_^)
小西的**教程(菜鸟版) http://www.cnzzz.com/download/do ;... 2459926605520&Url=1
流光教程电子版 http://www.88e.com.cn/software/download.asp?id=946&downid=1 ;
ncc制作的超级菜鸟**速成 http://61.138.196.132/sq88/down/show.asp?id=200&down=1
鹰派的网络经典教材 http://61.138.196.132/sq88/down/show.asp?id=202&down=1 ;
溯雪 光影 小榕 论坛精华集 http://www.andyxu.net/banana/tools/netXeyes.chm ;
安全焦点文档精华 http://www.andyxu.net/banana/tools/xfocus_doc.rar
三陀工作室整理的DELPHI和**技巧1.5 http://stgzs.myetang.com/Hack/DelphiTechV1.5.chm ;
rick的unix教材 http://www.7swords.net/Downloads/show.asp?id=139&down=3 ;
幻影旅团 团长:刺 写的**教程 http://mybanqiao.jia.net/rije/banana/tools/hy.rar ;
菜牛兄写的汉化与破解软件教程 http://mybanqiao.jia.net/rije/banana/tools/niu.rar ;
单机安装WEB服务,FTP服务,Imail邮件服务,和超级雷傲论坛全攻略 http://www.andyxu.net/banana/tools/WEB.chm ;
雾中鸟的《系统网络入侵方法小结》 http://www.lfpcb.com/czxz/show.asp?id=623&down=1 ;
傲气雄鹰的教程 http://scfly.3322.net/ ;
轰天炮写的**入门 http://mybanqiao.jia.net/rije/banana/tools/htp.rar ;
小铭写的《网络最菜**指南》 http://www.andyxu.net/banana/tools/001.rar
**防线全站教程 http://www.andyxu.net/banana/tools/banana_01.rar ;
菜鸟宝典 http://www.88e.com.cn/software/download.asp?id=1597&downid=1 ;
**基础教材 论坛成员沉睡不醒收集制作 http://61.138.196.132/sq88/down/show.asp?id=351&down=1
目前网上流行的大部分教程,前辈都整理了出来,我只不过验证了一下链接的可靠性,因为这段时间不知是什么原因有不少不错的网站都关门了,链接自然也就失效了。所以我将全部地址重新整理了一下,现在全部地址均经过测试可下载。下面的教程是我找了几个比较新的,也希望大家喜欢。
**守则 http://aokay.topcities.com/hwx4.htm
《高手之路,DOS起步》http://www.andyxu.net/banana/tools/dos.chm
经典电脑故障全攻略 http://www.cnzzz.com/download/do ;... 2367158186922&Url=1
**技术 http://www.lfpcb.com/czxz/show.asp?id=637&down=1
黑白专区教程总结 http://www.cnsq.net/sq88/down/show.asp?id=708&down=1
**攻放指南 第10期 http://www.cnzzz.com/download/do ;... 2836733159713&Url=1
**攻放指南 第8-9期 http://www.cnzzz.com/download/do ;... 2610023822128&Url=1
**攻放指南 第1-7期 http://www.cnzzz.com/download/do ;... 2365594674249&Url=1
UNICODE编码漏洞全攻略 http://www.andyxu.net/banana/tools/UNICODE.chm
6种国产木马使用教程 http://www.andyxu.net/banana/tools/mmjc.rar
手把手教你用流光 http://www.cnno.org/down/download.asp?id=113&downid=1 
推荐网址:
呵呵,介绍这些网址呢,大部份是前辈介绍的,当然我也加入了一些我自己的收藏,第一位嘛,我给改了一下呵呵。(除了第一个,排名不分先后,^_^) 其实我常去的站呢,也都在这里边了。
第六空间 www.sixthroom.com 这里你要什么有什么,文章全是精品。提到的软件全部都有下载。*特别推荐*
灰色轨迹 http://www.sandflee.net/ ;或 http://www.isgrey.com/ ;(前过这个文件的都知道这就是前辈的站点了,没什么可说的了,自己看吧)
wawa烂页 http://61.184.86.21/ ;(WINDOWS高手的个人站点,里面提供的软件也都不错)
netXeyes http://www.netxeyes.com/ ;(中国**界的传奇人物,榕哥的个人站点,不过最近论坛出现问题)
安全焦点 http://www.xfocus.net/ ;(知道X-SCAN吧,哪就不用多说了,。这里的漏洞资料也是相当全的)
小凤居 http://www.chinesehack.net/ ;(我昨晚没打开,不知道是什么原因,提供软件下载,技术文章等)
幻影旅团总站BBS http://www.3389.net/bbs/ ;(对这里不是很了解,是前辈加上去的,不过技术文章不错)
绿盟科技 http://security.nsfocus.com/ ;(目前我所知道的国内技术性最强的站点了,袁哥,ADMIN等等的天下,好文章太多了,不过建议初学者少去,去了也没用,看不懂。呵呵)
网络安全评估中心 http://www.cnns.net/ ;(又一个商业站点,提?!-- viewthread_post_sig -->
网络安全评估中心 http://www.cnns.net/ ;(又一个商业站点,提供漏洞资料,防护软件,技术文章等)
红色警戒 http://www.china4lert.org/ ;(一个以技术文章为主的个人站点,站长绿盟的版主)
**防线 http://badbanana.3322.net/ ;(一个综合性的安全站点,同样提供技术文章,软件下载等)
中国鹰派 http://www.chinawill.net/ ;(应该管是目前国内最大的民间**组织吧)
天天安全网 http://www.ttian.net/ ;(黑白关站后,这里应该算是最全的下载站点了)
补天网 http://www.patching.net/ ;(老牌的安全类站点了)
【网 嗅】http://www.netsill.com/ ;(这里的软件和文章不错)
CNSAFE.NET http://www.cnsafe.net/ ;(提供漏洞资料,技术文章等)
20CN http://www.20cn.net ;(不错的一个安全类站点,提供软件下载,技术文章等)
网络110 http://www.net110.net/ ;(又一个商业站点,提供技术文章,软件下载等)
诺亚方舟 http://nyfzns.520cat.com/ ;(提供技术文章,软件下载等)
红客联盟 http://www.cnhonker.net/ ;(这里的名气很大了,提供软件下载,技术文章等)
孤独剑客 http://www.janker.org/ ;(又一位中国安全界的名人孤独剑客的个人网站)
蓝盾网络 http://www.bluedon.com ;(一个商业站点,不过提供的在线检测等服务可都是免费的,很不错)
sometips http://www.sometips.com ;(一句话,里面的文章值得一看)
微软中国 http://www.microsoft.com/china/?MSCOMTB=MS_Microsoft|微软(中国)主页 (这个不用说了吧)
世界上著名**站点 http://www.hack.co.za 
搜索引擎
如果有找不到的软件工具、文章教程、漏洞资料、网站地址就用它试试:
Google http://www.google.com ;
百度 http://www.baidu.com/ ;
雅虎中国 http://cn.yahoo.com/






欢迎光临 黑色海岸线论坛 (http://bbs.thysea.com/) Powered by Discuz! 7.2