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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
WPTimeCapsulePOC — WP Time Capsule < 1.21.16 において、認証バイパスの脆弱性が最近発見されました(https://www.webarxsecurity.com/vulnerability-infinitewp-client-wp-time-capsule/)。このPoCは、この問題がどのように発生し、どのように悪用され得るかを実証しています。 | Kitploit
ツール/GitHubGitHub/secforce/wptimecapsulepoc
エクスプロイトウェブアプリケーション悪用ポストエクスプロイトペネトレーションテスト認証ペイロード開発
GitHubsecforce/wptimecapsulepoc

WPTimeCapsulePOC

WP Time Capsule < 1.21.16 において、認証バイパスの脆弱性が最近発見されました(https://www.webarxsecurity.com/vulnerability-infinitewp-client-wp-time-capsule/)。このPoCは、この問題がどのように発生し、どのように悪用され得るかを実証しています。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

WP Time Capsule < 1.21.16 のバックアップとステージング - 認証バイパスの概念実証

最近、WP Time Capsule < 1.21.16 に認証バイパスが発見されました(https://www.webarxsecurity.com/vulnerability-infinitewp-client-wp-time-capsule/)。このPoCは、この問題がどのように機能し、どのように悪用されるかを示します。

このPoC

このPoCには2つの異なるオプションがあります:

  • ケース1:管理者Cookieを取得する 例:
    root@kitploit:~
    poc.py http://127.0.0.1/
    
  • ケース2:管理者Cookieを取得し、パスワード保護付きウェブシェルを /wp-content/plugins/shell/shell.php にアップロードする 例:
    root@kitploit:~
    poc.py http://127.0.0.1 shell
    

問題

wptc-cron-functions.php 内にあり、Wptc_Init コンストラクタによって呼び出される decode_server_request_wptc() 関数は、ボディで送信されたリクエストをデコードする際に、いかなる権限チェックも実行しません:

root@kitploit:~
if( !empty($HTTP_RAW_POST_DATA_LOCAL)
  && strpos($HTTP_RAW_POST_DATA_LOCAL, 'IWP_JSON_PREFIX') !== false ){

  wptc_log('', "--------IWP_JSON_PREFIX--coming------");

  wp_cookie_constants();
  wptc_login_as_admin();
}

単に、任意のPOSTリクエストのボディに文字列 IWP_JSON_PREFIX が含まれているかどうかをチェックし、含まれている場合は次のメソッドを呼び出します:

root@kitploit:~
  wp_cookie_constants();
  wptc_login_as_admin();

wptc_login_as_admin() はすべての管理者ユーザーを取得し、最初のユーザーを取り出して、そのユーザー名のCookieを返します。

root@kitploit:~

function wptc_login_as_admin(){

	wptc_log(func_get_args(), "--------" . __FUNCTION__ . "--------");

	wptc_define_admin_constants();

	if( !function_exists('is_user_logged_in') ){
		include_once( ABSPATH . 'wp-includes/pluggable.php' );
	}

	if(is_user_logged_in()){
		return ;
	}

	$admins = get_users(array('role' => 'administrator'));

	foreach ($admins as $admin) {
		$user = $admin;
		break;
	}

	if (isset($user) && isset($user->ID)) {
		wp_set_current_user($user->ID);
		// Compatibility with All In One Security
		update_user_meta($user->ID, 'last_login_time', current_time('mysql'));
	}

	if(!defined('SECURE_AUTH_COOKIE')){

		return;
	}

	$isHTTPS = (bool)is_ssl();

	if($isHTTPS){
		wp_set_auth_cookie($user->ID);
	} else{
		wp_set_auth_cookie($user->ID, false, false);
		wp_set_auth_cookie($user->ID, false, true);
	}
}

問題の再現

このテストでは以下を使用しました:

  • docker-compose対応のWordPressイメージ https://github.com/nezhar/wordpress-docker-compose
  • wp-time-capsule 1.21.15 https://downloads.wordpress.org/plugin/wp-time-capsule.1.21.15.zip
  • Burp Suite

手順:

  1. ブラウザで新しいセッションにアクセスする
  2. wp-login.php に移動する
  3. ダミーのユーザー名とパスワードを入力する
  4. BODYの任意の部分を次の文字列に置き換える:IWP_JSON_PREFIX
  5. ホームページに戻る

ツールをダウンロード