中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 操作系统 > Linux > Linux综合
hacker成长的代码之路:穷举(1)
作者:未知 时间:2005-09-13 22:07 出处:Blog.ChinaUnix.net 责编:chinaitpower
              摘要:hacker成长的代码之路:穷举(1)
                作者:kf_701  写作时间:2005/4  Email:kf_701@21cn.com
                转载请保留原作者信息,谢谢。


要求的专业知识:
        一:    精通OSI参考模型,精通网络五层:物理层,数据链路层,网络层,传输层,应用层。
                精通每一层的协议,数据报格式。精通网络拓扑结构,第一层,第二层,第三层的网
                络互联,数据的转发和路由等。
        二:    精通C语言程序设计,UNIX/LINUX程序设计,网络程序设计。熟悉UNIX/LINUX系
                统操作,熟悉著名服务的基本配置,特性及使用的端口号。熟悉经典网络命令的使用,
                如:netstat,ping,traceroute,netcat,arp等。
        三:    精通标准SQL语言,熟悉流行的数据库使用,如:Oracle,Mysql等。掌握数据库与
                WEB语言的结合使用。

    黑客编程,不能没有穷举算法,所谓的弱口令扫描,不过就是简单的穷举而已。
    下面是一段完整的穷举算法代码,不是我写的。
    如果你没有看它之前,自己可以写出来,我想你的编码技巧已相当高超。
    就这么多了,help yourself!

     1  #include<stdio.h>
     2
     3  #define MIN     9
     4  #define MAX     16
     5
     6  int main()
     7  {
     8          char dict[]="0123456789";/*abcdefghijklmnopqrstuvwxyz";*/
     9          long dictcount=sizeof(dict);
    10          char password[MAX+2];
    11          long index[MAX];
    12
    13          long nlength=MIN;
    14          register long j,i=0;
    15          int b_next;
    16
    17          while(nlength<=MAX)
    18          {
    19                  for(i=0;i<MAX;i++)
    20                          index[i]=0;
    21
    22                  b_next=1;
    23                  while(b_next)
    24                  {
    25                          for(i=0;i<nlength;i++)
    26                                  password[i]=dict[index[i]];
    27
    28                          password[i]='';
    29                          puts(password);         /* output one result */
    30
    31                          for(j=nlength-1;j>=0;j--)
    32                          {
    33                                  index[j]++;
    34                                  if(index[j]!=dictcount-1)
    35                                          break;
    36                                  else
    37                                  {
    38                                          index[j]=0;
    39                                          if(j==0)
    40                                                  b_next=0;
    41                                  }
    42                          }
    43                  }
    44                  nlength++;
    45          }
    46          exit(0);
    47  }

下面的文章,我我将利用这段代码来写一个FTP穷举程序。
*****待续*****

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有