
CodeAstro Online Job Portal におけるIDOR脆弱性を実証する概念実証コード。認証済みの雇用主が、操作されたidパラメータを介して任意の求人投稿を削除できることを示します。
CodeAstro が開発した Online Job Portal Project in PHP MySQL は、削除リクエストを処理する前に、認証済みユーザーが求人投稿の所有者であるかどうかを検証できません。GET リクエスト内の id パラメータを変更することで、攻撃者は他の雇用者に属する求人投稿を削除できます。
id パラメータを雇用者 A の求人 ID に変更するステップ 1:- GET /online-job-portal-php-mysql/jobs/job-delete.php?id=[victim_job_id] HTTP/1.1 Host: target Cookie: [attacker_session_cookie]
ユーザー A から新しい求人投稿を作成し、ここで ID が 41 であることをメモします

ステップ 2 :-
ユーザー B から自身の求人投稿を削除しますが、Burp を使用してインターセプトします
ご覧のとおり、ユーザー B の求人投稿 ID は 39 です
ステップ 3 :-
求人投稿 ID を 39 から 41 に変更し、ユーザー B のアカウントでユーザー A の求人投稿を削除できます
この画像では、求人投稿 ID が 39 から 41 に変更されていることが確認できます
そして、正常に削除されたことが確認できます

ステップ 4 :-
ユーザー A のアカウントに移動し、postedJobs エンドポイントを確認すると、求人投稿が削除されていることがわかります

HTTP/1.1 302 Found Location: /online-job-portal-php-mysql/users/postedjobs.php?msg=deleted
認証済みの雇用者は誰でも、プラットフォーム上の他の雇用者に属する求人投稿を完全に削除でき、データ損失やサービスの中断を引き起こす可能性があります。