この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 13344|答える: 1

[メール] extmail(PHP実装)のmd5crypt暗号化手法の原理

[リンクをコピー]
掲載地 2015/05/21 8:05:33 | | |
同社は最近、郵送ソリューションとしてextmail+postfixを使用していました。 既存のOAシステムでは、従業員はログイン時に法的なアカウントでログインする必要がありますが、この場合は少なくとも2つの独立したアカウントとパスワードが必要であり、これが業務効率に一定の影響を与えています。

そこで、既存のOAシステムのログインメカニズムをextmailと同じアカウントとパスワード情報を使用するように変更することにしました。これにより、従業員がメールのパスワードを覚えていればOAシステムにログインできるため、業務効率が大幅に向上する利点があります。

理解したところ、extmailはメールアカウント情報を保存するためにmysqlを使用し、メールボックステーブルのパスワードが暗号化されたパスワード情報を保存しますが、extmailは複数の暗号化方法をサポートしています。詳細は、SYS_CRYPT_TYPEアイテムの設定を /var/www/extsuite/extman/webman.cf ファイルで確認してください。

私のシステムはmd5crypt暗号化を使用しており、パスワード形式は$1$k0Q4EA49$XXXXXXXXXXXXXXXXXXXXXです。
元のパスワードがメールボックスのテーブルに記録されていない場合、ユーザーが正しくパスワードを入力したかどうかはどうやって確認できますか?

PHPマニュアルの暗号関数の使用を繰り返し確認したところ、Cryptはさまざまなハッシュ暗号手法をサポートしていることが分かりました。詳細はPHPマニュアルの暗号関数の具体的な使い方を読んでください。

md5cryptにはソルトがあり、これは暗号化された暗号文($記号とそれに含まれる文字)にソルトが記録されていること、そして上記の暗号化結果におけるソルトは$1$k0Q4EA49$です。したがって、元のパスワードの暗号化アルゴリズムのPHP実装は123456であり、ソルトは$1$k0Q4EA49$です。以下の通りです。

<?php
エコークリプト(「123456」、「$1$k0Q4EA49$」);

出力$1$k0Q4EA49$WcjktPPYOSyhI77n8BPPr.

この原則を理解すれば、extmailのメールボックスアカウント情報認証を当社のシステムに統合できます。

さらに、Linuxの/etc/shadowやgrubのmd5-cryptの暗号化方法は上記の原理と全く同じです。他のツールを使わずにアカウントのパスワードを強制的に123456に変更したい場合、/etc/shadowファイルの対応するアカウントの2番目のフィールドを$1$k0Q4EA49$WcjktPPYOSyhI77n8BPPrに設定できます。




先の:sqlからLinqへのツール
次に:EXTMAIL管理者パスワード回復
掲載地 2019/09/10 22:44:07 |
フェイ兄さん、兄さん
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com