# Githubにおけるアクセス可能な削除データ

{{#include ../../banners/hacktricks-training.md}}

Githubから削除されたとされるデータにアクセスする方法は、[**このブログ投稿で報告されています**](https://trufflesecurity.com/blog/anyone-can-access-deleted-and-private-repo-data-github)。

## 削除されたフォークデータへのアクセス

1. 公開リポジトリをフォークします。
2. フォークにコードをコミットします。
3. フォークを削除します。

> [!CAUTION]
> 削除されたフォークにコミットされたデータはまだアクセス可能です。

## 削除されたリポジトリデータへのアクセス

1. GitHubに公開リポジトリがあります。
2. ユーザーがあなたのリポジトリをフォークします。
3. 彼らがフォークした後にデータをコミットします（彼らは決してフォークをあなたの更新と同期しません）。
4. リポジトリ全体を削除します。

> [!CAUTION]
> リポジトリを削除しても、行われたすべての変更はフォークを通じてアクセス可能です。

## プライベートリポジトリデータへのアクセス

1. 最終的に公開されるプライベートリポジトリを作成します。
2. そのリポジトリのプライベートな内部バージョンを作成し（フォークを通じて）、公開しない機能のための追加コードをコミットします。
3. “アップストリーム”リポジトリを公開し、フォークをプライベートに保ちます。

> [!CAUTION]
> 内部フォークが作成された時点と公開バージョンが公開された時点の間にプッシュされたすべてのデータにアクセスすることが可能です。

## 削除された/隠されたフォークからコミットを発見する方法

同じブログ投稿は2つのオプションを提案しています：

### コミットに直接アクセスする

コミットID（sha-1）値が知られている場合、`https://github.com/<user/org>/<repo>/commit/<commit_hash>`でアクセス可能です。

### 短いSHA-1値をブルートフォースする

これらの両方にアクセスするのは同じです：

- [https://github.com/HackTricks-wiki/hacktricks/commit/8cf94635c266ca5618a9f4da65ea92c04bee9a14](https://github.com/HackTricks-wiki/hacktricks/commit/8cf94635c266ca5618a9f4da65ea92c04bee9a14)
- [https://github.com/HackTricks-wiki/hacktricks/commit/8cf9463](https://github.com/HackTricks-wiki/hacktricks/commit/8cf9463)

最新のものはブルートフォース可能な短いsha-1を使用しています。

## 参考文献

- [https://trufflesecurity.com/blog/anyone-can-access-deleted-and-private-repo-data-github](https://trufflesecurity.com/blog/anyone-can-access-deleted-and-private-repo-data-github)

{{#include ../../banners/hacktricks-training.md}}
