PHP コード監査の実行方法を学ぶ方法について心配していますか?

WBOY
リリース: 2016-07-23 08:54:52
オリジナル
1651 人が閲覧しました
この投稿は、Chou He Chou によって 2016-7-13 10:34 に最終編集されました

他のフォーラムでこの投稿を拝見し、とても良い内容だと思ったので、みんなで話し合って学ぶために共有しました。

作者: jing0102
原文:
PHP コード監査の実行方法を学ぶ方法について心配していますか?

0x01 コード監査の概要

コード監査は、プログラムエラー、セキュリティホール、プログラム仕様違反を発見することを目的としたソースコード分析テクノロジーです。
当社のコード監査オブジェクトには、WindowsおよびLinuxシステム環境での次の言語の監査が含まれますが、これらに限定されません: Java、C、C#、ASP、PHP、JSP、.NET。
もちろん、今日人気があるのは PHP コード監査です。PHP は今日の WEB セキュリティ開発の主流言語の 1 つでもあるためです。

0x02 PHPコード監査の学習方法
コード監査の意味が分かったので、PHPのソースコードの抜け穴、欠陥、エラーを見つけるには、ソースコードに対応する言語(PHP)を学習する必要があることを知っておく必要があります。 )。
①PHPの一般的な構文を理解する
②初期状態でPHPコードが読める
③関連する PHP の危険な関数 (system() exec() など) を理解する
④検索、バックトラック、検索ができるツールを用意します (推奨: TommSearch、SeayPHP ソースコード監査ツール)
⑤他の人の分析プロセスについて詳しく読む
⑥実際のマイニングを実施

0x03 PHPコード監査の実施方法① まず、ローカル侵入テストをローカルで実施します。エラーが見つかったら、TommSearch を使用して関連ファイルを見つけます (フレームワークの場合、場所は非常に重要です)。面倒 (フレームワークの位置決めについては、次の記事を参照してください: http://darkm01lym0on.blog.163.com/blog/static/2567990922016019105947508/)、フレームでない場合は、 URL ファイルを見て直接見つけることができます)
②関連コードを追跡
③対応するテストノートを作成します
④監査終了
次に、ウェブマスターの家に行き、ソースコードをダウンロードしてテストを行います。ダウンロードアドレス:http://down.chinaz.com/soft/33915.htm
例: PHP ゲストブック システムをダウンロードして見てみました

このファイルのソース コードを表示すると、それが fk1.php ファイルであることがわかります。
  • $username=$_POST["username"];//変数 username は、post によって渡された username パラメータの値に割り当てられます。次の複数の値は、同じ意味</font>
  • $ qq = $ _ post ["qq"]; ,email,homepage,face,leave_title,leave_contents,leave_time,ip) 値 ('$username',$qq,'$email','$homepage ','$face','$title','$content ','$time','$ip')";//これらのメッセージの値を挿入するには、insert を使用します< /font>
  • mysql_query($sql);< font color="Blue">//ステートメントを実行
  • [color=rgb(85, 85, 85) !重要]
  • コードをコピー
  • 送信されたメッセージの内容が、mysql ステートメントを処理せずに実行され、データベースに挿入されたことがわかります。

また、コードを通してレビューが必要であることがわかるため、これはバックグラウンドでレビューできると結論付けることができます。
今、メッセージを送信するためにフロントデスクに
<script>alert(1)</script>
ペイロード
を挿入しました: 送信成功:

背景に移動:

メッセージ管理に移動:

ポップアップボックスが即座に表示され、コードはスムーズに実行されました。
この XSS ストレージの脆弱性を通じて、XSS を実行し、バックグラウンド管理者の COOKIE を攻撃することができます。

-------------------------------------例終了--------------------------
上記は簡単な監査のアイデアです。専門家は批判すべきではありません。初心者はもっと学ぶことができます。


0x04 コード監査への道の概要
正直に言うと、私もコード監査の道を 1 年間続けてきて、諦めようとしたこともありましたが、それでも粘り強く続けてきました。私の学習経験が皆さんのお役に立てれば幸いです。
1. 自慢はやめて、例を見てください
2. PHP コードの関数にもっと注目してください
3. 最も重要で難しいこと:
粘り強さ 今後もみんなでお互いを宣伝していけたらいいですね!フアイティン!





--------この記事は以下から転載されました:
i Chunqiu Forum



ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート