Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
mst-sec-lecture-notes
提交
03663cc4
M
mst-sec-lecture-notes
项目概览
OpenDocCN
/
mst-sec-lecture-notes
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
mst-sec-lecture-notes
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
03663cc4
编写于
2月 23, 2017
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
弱口令v2
上级
b3ddd809
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
126 addition
and
22 deletion
+126
-22
漏洞篇 弱口令.md
漏洞篇 弱口令.md
+126
-22
未找到文件。
漏洞篇 弱口令.md
浏览文件 @
03663cc4
...
...
@@ -12,7 +12,17 @@
通过爆破工具就可以很容易破解用户的弱口令。
目前网络上也有人特地整理了常用的弱口令(Top 100):
## 危害
![](
http://ww3.sinaimg.cn/large/841aea59jw1fau41nan6lj20tm0c5dh8.jpg
)
中石油的多个加油站的视频监控被入侵,我们可以通过它们看一些隐私。也可以通过它把监控器关掉,来进行一些非法活动。
## 分类
### 普通型
普通型弱口令就是常见的密码,比如,目前网络上也有人特地整理了常用的弱口令(Top 100):
```
123456 a123456 123456a 5201314 111111 woaini1314 qq123456 123123 000000 1qaz2wsx 1q2w3e4r
...
...
@@ -27,38 +37,86 @@ s123456 nihao123 caonima123 zxcvbnm123 wang123 159357 1A2B3C4D asdasd123 584520
1123581321 110120 qq1314520
```
## 危害
对于网站后台而言,一般为:
![](
http://ww3.sinaimg.cn/large/841aea59jw1fau41nan6lj20tm0c5dh8.jpg
)
+
admin
+
manager
+
admin123
+
admin888
+
admin666
+
...
中石油的多个加油站的视频监控被入侵,我们可以通过它们看一些隐私。也可以通过它把监控器关掉,来进行一些非法活动。
具体来说,不同的后台类型拥有不同的弱密码:
+
数据库(phpmyadmin)
+
账号:root
+
密码:root、root123、123456
+
tomcat
+
账号:admin、tomcat、manager
+
密码:admin、tomcat、admin123、123456、manager
+
jboss
+
账号:admin、jboss、manager
+
密码:admin、jboss、manager、123456
+
weblogic
+
账号:weblogic、admin、manager
+
密码:weblogic、admin、manager、123456
### 条件型
条件型弱口令就是和用户信息相关的密码,比如生日+手机号、姓名首字母+生日、爱人姓名首字母+生日+常用字母(520、1314 等)。
我们可以使用这个
[
猜密码的网站
](
http://www.caimima.net
)
来生成条件弱口令字典。
![](
http://upload-images.jianshu.io/upload_images/118142-eba852fc2180431c.jpg
)
比如我们知道一个人,他的信息如下:
+
姓名:王小二
+
邮箱:412391882@qq.com
+
英文名:twowang
+
手机号:110
那我们就可以在这个网站上输入这些信息,然后点击下方的“提交”。
![](
http://upload-images.jianshu.io/upload_images/118142-2f881880567e3838.jpg
)
然后我们就得到了这个最有可能的密码。
![](
http://upload-images.jianshu.io/upload_images/118142-d68bf436abeca6d1.jpg
)
点击“查看更多”之后还可以获取更多弱口令。
## 实战
比如说,我们使用这样一段代码来演示弱口令漏洞,它模拟了某个系统的后台。
(课件里没有这个代码,这是我还原出来的)
比如说,我们使用这样一段代码来演示弱口令漏洞,它模拟了某个系统的后台。
```
php
<?php
function
showForm
()
{
?>
<form
method=
"POST"
action=
"./lesspass.php"
>
<input
type=
"text"
name=
"un"
/>
<input
type=
"password"
name=
"pw"
/>
<input
type=
"submit"
value=
"登录"
/>
</form>
<?php
</form>
<?php
}
$un
=
@
$_POST
[
'un'
];
$pw
=
@
$_POST
[
'pw'
];
if
(
$un
==
''
&&
$pw
==
''
)
return
;
showForm
()
;
else
if
(
$un
==
'admin'
&&
$pw
==
'admin888'
)
echo
'登录成功'
;
else
else
{
showForm
();
echo
'登录失败'
;
}
```
第一行到第
六
行组成了一个 HTTP 表单。我们可以看到,这个表单使用 POST 方法向这个页面自己提交信息,
`un`
表单域对应 PHP 的
`un`
变量,
`pw`
表单域对应 PHP 的
`pw`
变量。
第一行到第
七
行组成了一个 HTTP 表单。我们可以看到,这个表单使用 POST 方法向这个页面自己提交信息,
`un`
表单域对应 PHP 的
`un`
变量,
`pw`
表单域对应 PHP 的
`pw`
变量。
第
七行和第八
行从 HTTP 请求的主体中取出
`un`
参数和
`pw`
参数。
第
九行和第十
行从 HTTP 请求的主体中取出
`un`
参数和
`pw`
参数。
第
九到第十四
行对用户名和密码参数做判断,如果都为空,那么我们认为它仅仅是显示页面的请求,直接返回。如果
`un`
为
`admin`
,且
`pw`
为
`admin888`
,因为这是我们预设的正确用户名和密码,所以显示登陆成功,否则显示登录失败。
第
十一到第十八
行对用户名和密码参数做判断,如果都为空,那么我们认为它仅仅是显示页面的请求,直接返回。如果
`un`
为
`admin`
,且
`pw`
为
`admin888`
,因为这是我们预设的正确用户名和密码,所以显示登陆成功,否则显示登录失败。
真实代码的用户名和密码是从数据库里面取的,但是它仍然是确定的东西,而且如果存在弱口令,还是能破解出来,原理一致。
...
...
@@ -72,7 +130,7 @@ else
之后是
`admin`
和
`admin123`
,还是失败。最后尝试
`admin`
和
`admin888`
,成功。
![](
http://
ww1.sinaimg.cn/large/841aea59jw1fau41x5e4hj20f0051glp
.jpg
)
![](
http://
upload-images.jianshu.io/upload_images/118142-71e8a2b71d245e71
.jpg
)
可见,爆破破解的原理就是一个一个尝试,破解效果完全取决于你所使用的字典。如果密码碰巧在你的字典中,就一定能成功。
...
...
@@ -80,35 +138,69 @@ else
首先我们需要把浏览器和 Burp 的代理配置好,打开 Burp 的拦截模式。之后我们在
`lesspass.php`
页面中随便输入什么东西并提交,在 Burp 中就可以看到拦截的封包:
![](
http://
ww3.sinaimg.cn/large/841aea59jw1faygi4s5wej20rr0m7gnb
.jpg
)
![](
http://
upload-images.jianshu.io/upload_images/118142-033f60ebe540c49e
.jpg
)
为了爆破密码,我们需要使用它的 Intruder 功能,右键弹出菜单并选择"Send to Intruder":
![](
http://
ww4.sinaimg.cn/large/841aea59jw1faygi9sth8j20rt0m60uv
.jpg
)
![](
http://
upload-images.jianshu.io/upload_images/118142-4476dd543cf87dc3
.jpg
)
之后访问 Intruder 标签页,在 Position 子标签页中我们可以看到封包。
![](
http://
ww2.sinaimg.cn/large/841aea59jw1faygiibvt1j20rr0m2mz8
.jpg
)
![](
http://
upload-images.jianshu.io/upload_images/118142-fa9665e9e6e24942
.jpg
)
我们需要点击右边的
`Clear`
按钮把所有标记清除掉,由于我们需要破解密码,我们选中密码参数值点击
`Add`
。
![](
http://
ww1.sinaimg.cn/large/841aea59jw1faygil5jxkj20ro0m5jtg
.jpg
)
![](
http://
upload-images.jianshu.io/upload_images/118142-e0c09d997416bbd6
.jpg
)
之后我们切换到旁边的 Payloads 标签页,点击中间的
`load`
按钮,加载字典。我们选择之前的
`top100.txt`
。
![](
http://
ww2.sinaimg.cn/large/841aea59jw1faygio42flj20rt0m4q55
.jpg
)
![](
http://
upload-images.jianshu.io/upload_images/118142-752e922c5dfc31de
.jpg
)
不要忘了要将
`admin888`
插入进去。在下面的输入框中输入
`admin888`
,并点击旁边的
`Add`
。
![](
http://
ww2.sinaimg.cn/large/841aea59jw1faygir2s2jj20rq0m540d
.jpg
)
![](
http://
upload-images.jianshu.io/upload_images/118142-3885a0a3f8ebb864
.jpg
)
点击右上角的
`Start Attack`
来开始爆破,我们会看到结果列表。
点击右上角的
`Start Attack`
来开始爆破
(老版本是
`Intruder -> Start Attack`
菜单栏)
,我们会看到结果列表。
![](
http://ww3.sinaimg.cn/large/841aea59jw1faygitsdytj20rp0m4jte.jpg
)
![](
http://upload-images.jianshu.io/upload_images/118142-5196bd6f0935d061.jpg
)
![](
http://upload-images.jianshu.io/upload_images/118142-c85b3309f8749b8a.jpg
)
我们点击
`Length`
表头,让它按照长度来排序。可以发现有一个项目的长度与其它明显不同,那么它就是正确的结果。
![](
http://ww3.sinaimg.cn/large/841aea59jw1faygiwxgzrj20rq0m2jtf.jpg
)
![](
http://upload-images.jianshu.io/upload_images/118142-c3be9610e5577fe8.jpg
)
## PKAV Fuzzer
我们可以在
[
这里
](
http://www.pkav.net/tool/fuzzer/
)
下载工具。
我下载的版本的 1.5.6,我就可以双击
`Pkav HTTP Fuzzer 1.5.6.exe`
来打开它。另外目录下还有一份使用手册,
`Pkav HTTP Fuzzer使用手册 Ver 1.0.pdf`
,大家可以参考这个手册。这个教程只会讲用到的功能。
它的主界面是这样的:
![](
http://upload-images.jianshu.io/upload_images/118142-44cc7a2a23a6ac42.jpg
)
左边是“请求包”输入框,我们需要填写整个 HTTP 封包(就是 Burp 中的
`Proxy -> Intercept`
选项卡中的内容),我们将其复制过来。然后我们选中
`pw`
位置的
`admin`
,点击下面的“添加标记”:
![](
http://upload-images.jianshu.io/upload_images/118142-d225b5c69f570103.jpg
)
我们再来看看右边的“重放设置”,“重放模式”和“变体赋值”都不用改动,我们点击下方的“导入”按钮,选择之前的
`top100.txt`
。
![](
http://upload-images.jianshu.io/upload_images/118142-a9116c014584cc0e.jpg
)
之后再“添加”按钮右边的输入框中输入
`admin888`
,然后点击“添加”。
![](
http://upload-images.jianshu.io/upload_images/118142-76b287c78c22bd98.jpg
)
然后我们点击下方的“发包器”选项卡,在新的界面中直接点“启动”:
![](
http://upload-images.jianshu.io/upload_images/118142-be04e331c332c091.jpg
)
然后我们点击“长度”表头,让它按照长度排序。
![](
http://upload-images.jianshu.io/upload_images/118142-435fac0d299dd0d1.jpg
)
我们可以看到,仅当密码为
`admin888`
时长度为 6,其它都是其它数值,那么它就是正确密码。
## Burp Suite 遍历
...
...
@@ -136,8 +228,20 @@ else
![](
http://ww3.sinaimg.cn/large/841aea59jw1faygj81ytoj20rs0m7jt6.jpg
)
## 字典
更多字典请见 Kali 系统的
`/usr/share/wordlists`
目录。
## 附录
+
[
新手指南:DVWA-1.9全级别教程之Brute Force
](
http://www.freebuf.com/articles/web/116437.html
)
+
[
新手指南:DVWA-1.9全级别教程之Insecure CAPTCHA
](
http://www.freebuf.com/articles/web/119692.html
)
+
[
Kali Linux 网络扫描秘籍 第七章 Web 应用扫描(一)
](
http://www.jianshu.com/p/4d515dd9915f
)
+
[
Kali Linux 网络扫描秘籍 第七章 Web 应用扫描(二)
](
http://www.jianshu.com/p/dfa3136b99b8
)
+
[
Kali Linux 网络扫描秘籍 第七章 Web 应用扫描(三)
](
http://www.jianshu.com/p/8ff6180bec9b
)
+
[
Burpsuite神器常用功能使用方法总结
](
https://zhuanlan.zhihu.com/p/22288110
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录