「API secret key Leakage leads to disclosure of Employee’s Information」からAPIを学ぶ

ソース:

0xspade.medium.com

脆弱性APIの設定の不備

 

訳:

assetfinder を使用して、redacted.comのサブドメインをチェックし、httprobe、get-title、そしてsort -uコマンドでパイプ処理をしました。
 1 分後に結果が表示され、出力上の最初のサブドメインに気づき.

 

 

サブドメイン ( smh.internal.redacted.com ) は非常にシンプルです。 従業員の [サインイン] タブがあり、認証のために Google からリダイレクトされ。

 したがって、そのドメインダッシュボードに入るには、有効な @redacted.com メールが必要であるか、従業員である必要があり。
ソースを確認すると、JS ファイルが 1 つしかないことがわかり。

 

 

その「main.js」を開いて驚いたのは、いつも別のサイトで遭遇するような縮小化がされていないことで。
私は常に、会社名、ドメイン (非表示または内部サブドメインの場合)、ファイル拡張子、または明らかな API パス (非表示のエンドポイントの場合)、「API paths (for hidden endpoints), ‘secret’, ‘access[_|-]’, ‘access[k|t]’, ‘api[_|-]’, ‘[-|_]key’, ‘https:’, ‘http:’ などの特定のキーワード チェックし
そして、キーワード'redacted.com'を検索し。

 

 

Base64 認証資格情報を見つけたところ、これが会社のbamboohr API キーの正確な API キーであることがわかり。
API ドキュメントは理解しやすいので、JS ファイル内で漏洩している API キーがまだ機能していることをすぐに確認でき。
curl コマンドを使用すると、bamboohr.com API エンドポイントから従業員リストを簡単にダンプでき。
bamboohr.comにログインしているようなものです。
また、既存のすべての従業員を表示、削除、削除、更新することができ、 redacted.com 以下は従業員のダンプ例のスクリーンショットで。

 

 

これを会社に送信すると、24 時間以内にすでに API キーが取り消されており、問題が修正されたことを確認し。

 

ほなほな。