Skip to content
KitploitKITPLOIT
ツールブログ
Log in
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2017-1000367 — CVE-2017-1000367の概念実証エクスプロイト。Linux上のSudoのget_process_ttyname()におけるローカル権限昇格の脆弱性で、ttyデバイス番号の操作を介して任意のファイルを上書きできます。 | Kitploit
ツール/GitHubGitHub/homjxi0e/cve-2017-1000367
特権昇格脆弱性分析エクスプロイトペネトレーションテストレッドチーミングバイナリエクスプロイト
GitHubhomjxi0e/cve-2017-1000367

CVE-2017-1000367

CVE-2017-1000367の概念実証エクスプロイト。Linux上のSudoのget_process_ttyname()におけるローカル権限昇格の脆弱性で、ttyデバイス番号の操作を介して任意のファイルを上書きできます。

リポジトリを見る
1629年前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2017-1000367

我々は、Linux向けSudoのget_process_ttyname()に脆弱性を発見しました。この関数は“/proc/[pid]/stat”(man proc)を開き、フィールド7(tty_nr)からttyのデバイス番号を読み取ります。残念ながら、これらのフィールドはスペース区切りであり、フィールド2(comm、コマンドのファイル名)にはスペースを含めることができます(CVE-2017-1000367)。

例えば、シンボリックリンク“./ 1 ”を通じてSudoを実行すると、get_process_ttyname()はsudo_ttyname_dev()を呼び出し、組み込みのsearch_devs[]の中から存在しないttyデバイス番号“1”を探します。

次に、sudo_ttyname_dev()は関数sudo_ttyname_scan()を呼び出し、“/dev”の幅優先探索でこの存在しないttyデバイス番号“1”を探します。

最後に、我々はこの関数が誰でも書き込み可能な“/dev/shm”を走査する際にこれを悪用します。この脆弱性により、ローカルユーザーは自分のttyがあたかもファイルシステム上の任意のキャラクタデバイスであるかのように見せかけることができ、さらに2回のレースコンディションを経て、自分のttyがあたかもファイルシステム上の任意のファイルであるかのように見せかけることができます。

SELinuxが有効なシステムでは、ユーザーが完全なroot権限を付与しないコマンドに対してSudoerである場合、そのコマンドの出力でファイルシステム上の任意のファイル(root所有のファイルを含む)を上書きできます。これは、relabel_tty()(src/selinux.c内)がそのttyに対してopen(O_RDWR|O_NONBLOCK)を呼び出し、それをコマンドの標準入力・標準出力・標準エラー出力にdup2()するためです。これにより、任意のSudoerユーザーが完全なroot権限を取得できます。

Red Hat Enterprise Linux 6 (sudo) | ✅ |

Red Hat Enterprise Linux 7 (sudo) | ✅ |

Red Hat Enterprise Linux Server (v. 5 ELS) (sudo) | ✅ |

Oracle Enterprise Linux 6 | ✅ |

Oracle Enterprise Linux 7 | ✅ |

Oracle Enterprise Linux Server 5 | ✅ |

CentOS Linux 6 (sudo) | ✅ |

CentOS Linux 7 (sudo) | ✅ |

Debian wheezy | ✅ |

Debian jessie | ✅ |

Debian stretch | ✅ |

Debian sid | ✅ |

Ubuntu 17.04 | ✅ |

Ubuntu 16.10 | ✅ |

Ubuntu 16.04 LTS | ✅ |

Ubuntu 14.04 LTS | ✅ |

SUSE Linux Enterprise Software Development Kit 12-SP2 | ✅ |

SUSE Linux Enterprise Server for Raspberry Pi 12-SP2 | ✅ |

SUSE Linux Enterprise Server 12-SP2 | ✅ |

SUSE Linux Enterprise Desktop 12-SP2 | ✅ |

OpenSuse, Slackware, and Gentoo Linux | ✅ |

CentOS/RHEL/Scientific/Oracle Linuxサーバーでsudoをパッチするには? ✅ |

ターミナル:> sudo yum update

Fedora Linuxサーバーでsudoをパッチするには?

ターミナル:> sudo dnf update

Suse/OpenSUSE Linuxサーバーでsudoをパッチするには? ✅ |

ターミナル:> sudo zypper update

Arch Linuxサーバーでsudoをパッチするには? ✅ |

ターミナル:> sudo pacman -Syu

Alpine Linuxサーバーでsudoをパッチするには? ✅ |

ターミナル:> apk update && apk upgrade

Slackware Linuxサーバーでsudoをパッチするには? ✅ |

upgradepkg sudo-1.8.20p1-i586-1_slack14.2.txz

Gentoo Linuxサーバーでsudoをパッチするには? ✅ |

ターミナル:> emerge --sync

ターミナル:> emerge --ask --oneshot --verbose ">=app-admin/sudo-1.8.20_p1"

ツールをダウンロード