WEB浸透実験 - 「私はあなたがする得ることができるか、DZを参照してください」 - 実験記録

免責事項:この記事はブロガーオリジナル記事です、続くBY-SAのCC 4.0を著作権契約、複製、元のソースのリンクと、この文を添付してください。
このリンク: https://blog.csdn.net/ai_64/article/details/90751058

WEB浸透実験 - 「私はあなたがする得ることができるか、DZを参照してください」 - 実験記録


著者は次のような問題解決のアイデアを感謝
https://bbs.ichunqiu.com/thread-1953-1-1.html一匹狼1927 


トピック説明:
このタイトルは、CTFの本拠地される- >競技トレーニングキャンプ- 、浸透の問題を包括的に高いシニアタイトルの> DZの脆弱性の分類である、それはまた、知識の広い範囲に関与しています。この問題の実践とマスターすべての知識ポイントは、基本的な侵入テストを理解することは非常に有用です。

この質問は、DZ(6.0版)有名で浸透サイトが必要です。
Baiduは、インジェクションの脆弱性がDZ6 / 7のバージョンを投票存在することがわかったSQLインジェクションを完了するために、独自のツールを使用する必要があります。


本研究では、(順番にリストされている実験手順に従い)の3つの重要なポイントがあります 
最初のものは:モデレーターの使用は、管理者パスワードを取得するためにインジェクション攻撃を占める
4 DZ6の運転免許証ブラスト後:第二
第三:トロイの木馬は、テンプレートに挿入しましたテンプレートはシェルを取得する場所を見つけます。
ステップバイステップは、タスクを完了するために行います。
 

 

 


  

  

この実験は、唯一の対象となる
ターゲットサーバのCドライブにフラグファイル情報を取得します。

----------------------
起動する手順:

まず、ページフォーラム(情報収集)を参照するには、ブラウザを開きます。

フォーラムDZ6.0古いバージョン。

Baiduは、インジェクションの脆弱性がDZ6 / 7のバージョンを投票存在することがわかったSQLインジェクションを完了するために、独自のツールを使用する必要があります。

簡単に見て、あなたは、フォーラムのメンバーは4人のメンバーを登録見ることができます右上隅をクリックして、フォーラムのタイトルがワードトロイの木馬であることがわかりました。

Test1を成功着陸の試みは、test1のメンバー弱いパスワード、およびセキュリティなしの制限、test1のユーザー名、パスワードtest1のを見つけました。

司会者の身元TEST1、発見をログインした後。世論調査を作成し、所有者として使用します。

投票後、投票の詳細を表示するにはクリック、編集世論調査の詳細ページをクリックしてください。

ハイライトは、以前の収集DZ6の脆弱性情報がエラーSQLインジェクションの投票編集ページがあることを示しているによると、来ました。

げっぷリピータモジュールにおいて、前記ペイロードは、特に図、挿入されています。

PAYLOADの
名= "polloption [1'又はUPDATEXML(1、CONCAT(0、(0,1制限cdb_membersから連結(ユーザ名、パスワード)を選択し))、0) '=']"


ABC三つの位置を注入することができ、私はここA.happy位置注射を選択してください。

名= xxxの幸せな二列、ここでは交換用のペイロードステートメントに。
空のA.HAPPYこのラインおよびコンテンツ。具体的に図


特別な注意は、等号の前に単一引用符が続く最後尾の2の単一引用符、です。


げっぷエコーによれば、エラー注入のペイロードの利点を見出すことができます。

(可跳过)补充内容开始:——————————
报错注入原理:利用错误回显,通过floor()、updatexml()等函数将要查询的内容输出到页面上。
    第一步:判断是否存在注入点
    在url后面加一个标点符号,页面必须返回错误。
    第二步:可以将url交给Sqlmap自动化处理,获得整个数据库。
    若想手动尝试可以尝试构造:
    攻击者期望使用SQL语句: select * from where 'id'=1 ' and updatexml(1,concat(0x70,(select user()),0x7e),1)--+
    
    攻击者构造url:www.target.php?id=1 'and+updatexml(1,concat(0x7e,(select+user()),0x7e),1)--+
    上面的url可以获得当前操作数据库的user
    
    攻击者构造url:www.target.php?id=1 'and+updatexml(1,concat(0x7e,(select+database()),0x7e),1)--+
    上面的url可以获得当前数据库的名字

    攻击者构造url:www.target.php?id=1 'and+updatexml(1,concat(0x7e,(T-SQL语句),0x7e),1)--+
    知道数据库名字后,利用information_schema库,可以获得任意信息。
补充内容结束:——————————————————

上图的hash并不完整。
调整payload即可获得完整的32位hash。

hash破解之后的明文是whoami!@#123

利用用户名: admin,密码:whoami!@#123,登录dz论坛。密码验证通过后,提示输入安全问题。可是安全问题我们不知道,并且安全问题回答最多允许错误5次。此处是一个难点。

安全问题在数据库中经过加密处理,故用注入语句查询出来的值为加密后的散列值。它保存在表cdb_members中,字段叫secques,它就是我们要获取的值。

调整payload即可获得 secques的值。61A55235.
tips: 0x7E是 ~符号。

本地实验开始:————————

在本地搭建DZ6,admin登录后,直接设置第七个安全问题:我的驾驶证后四位,答案:随意填一个四位数。
然后将打开本地数据库,将本地dz库中的secques中的值改为61A55235。

最后将本地DZ论坛的登录限制干掉。我这里设置成5W次错误锁定。

如此一来我们就可以在本地爆破DZ的安全问题。

爆破需要字典,字典生成工具,可以用这个。 

使用burp暴力破解后可知,驾驶证后4位为9595。

本地实验结束————————————————————————————


实验进入了尾声。
使用用户名:admin,密码:whoami!@#123,驾驶证后四位:9595,成功登录论坛,点击右上角系统设置。按图一步步插入一句话木马。
 

 
 

 

 

菜刀连接地址: http://www.test.ichunqiu/templates/default/customfaq.lang.php
双击测试是否能连接成功。
 


显然,木马已成功执行。
使用命令快速找flag文件。
 


TIPS:输入dir /s,可以显示出目录和所有子目录中的文件。输入dir /s/p,可以分屏显示出目录和所有子目录中的文件。
Flag为 7hc9n2m3 。
回答问题:

至此实验结束。

补充内容:
DZ 问题答案加密源码实现:

对questionid进行MD5:
MD5(7)= 8f14e45fceea167a5a36dedd4bea2543

下一步,将安全回答的值跟加密后的7进行字符串连接:
95958f14e45fceea167a5a36dedd4bea2543

下一步,将这个值再进行MD5:
MD5(95958f14e45fceea167a5a36dedd4bea2543)= b399d3c744128d6a61a5523577d26479
复制代码
再取第17到24位的8位密码:
61a55235

实验小结
本实验内容较多,平时要多注意积累常见CMS的漏洞,投票漏洞是DZ6、7的通用漏洞,是一个经典漏洞。
爆破字典生成器有很多,如果需要结合社会工程学来生成字典,可使用亦思想社会工程学字典生成工具。
 
本实验的步骤可以总结分三步,
获取网站admin密码,本地爆破安全问题,上传木马获得shell。

本题的解题过程较为繁琐,耗时也比较长,需要具备耐心和熟练利用报错注入。如果可以将所使用到的技巧熟练掌握,将对渗透学习帮助很大。
 

おすすめ

転載: blog.csdn.net/ai_64/article/details/90751058