jquery UI CVE-2016-7103 試す

概要

◦dialog 関数の「closeText」オプションへの入力がエスケープされていないためXSSが出る問題

https://github.com/advisories/GHSA-hpcf-8vf9-q4gj

脆弱性動作検証

ソースコードは以下のようにした。

テキストボックスの値を取得して、diglogのcloseTextオプションにそのまま渡す。

pocが見えないようにtypeをpasswordにしておく。

<script>
	$(function(){
	  $('#button1').click(function(){
		var eletemnt = document.getElementById('CVE20167103_text');
		$('#dialog1').dialog({
			closeText:eletemnt.value,
		});
	  });
	});
  </script>
  
  <div id="dialog1" title="CVE-2016-7103" style="display:none">
	<p>CVE-2016-7103</p>
  </div>
  <input type="password" id="CVE20167103_text">
  <button id="button1">CVE-2016-7103</button>

実行した結果。javascriptが実行されていた。

修正後動作検証

「”><」などがエスケープされていた。

ソースコード差分

感想

実施する順番をミスったか、最新のものから検証してしまったので古いCVEは「まぁそうだよね」といった感じ。

スポンサーリンク
スポンサーリンク
ブログ村
PVアクセスランキング にほんブログ村
SNSでフォローする

コメントを残す

メールアドレスが公開されることはありません。