SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Security Issues In SCORM
The "Recent" History
• Dr. Bill Blackmon introduces SLAG and
Assessment Security (Aug. 23rd
, 2006)
• Claude Ostyn addresses Assessment Security in
"In the Eye of the SCORM" (Last Revised March
2007)
• Philip Hutchison posted WORKING bookmarklet
on his blog PiPwerks.com (April 2nd
, 2009)
• SCORM Community reacts
– Mike Rustici (scorm.com) responds (April 3rd
, 2009)
– Tom King (mobilemind.net) responds (April 5th
, 2009)
• ADL responds (May 31st
, 2009)
• ADL Implementation Fest Developers’ Workshop :
Security Issues in SCORM
Types of Security Issues
• Physical Security Issues
– Open Book, Open System
– Student Validation
– Plain Old Cheating
• Technical Security Issues
– Bookmarklet
– Script Injection / Script Include
– JavaScript Debugger
Physical Security Issues
• Open Book / Open System
– Search the web
– Search a book
• Student Validation
– Who is taking the test?
• Plain Old Cheating
– Taking screenshots of the exams
– Paying / bartering for the answer keys
• The list goes on….
Cheaters Should Be Proctored
Technical Security Issues
• Bookmarklets
– JavaScript can be written in the address bar of the browser and made
to execute on the current web page loaded in the browser.
• http://libgmail.sourceforge.net/googlemaps.html
• http://www.gnucitizen.org/blog/bookmark-of-death-domain-hijacking-
without-0days/
– Browser support
• https://www.squarefree.com/bookmarklets/browsers.html
• Script Injection / Script Include
– If the bookmarklet is not robust enough, you can use the bookmarklet
to embed your own JavaScript files into the web page.
– http://leftlogic.com/lounge/articles/bookmarklet-coding/
Points of Entry
Technical Security Issues
• Internet Explorer
– Web Accessibilty Toolkit
– Microsoft Script Debugger
– Internet Explorer Developer’s Toolbar
– IE Script Debugger (View > Script Debugger) IE7 and IE8
• FireFox
– Web Accessibilty Toolkit
– Fire Bug
– FireFox Error Console
• Any Browser
– Visual Studio 2005
• http://weblogs.asp.net/pglavich/archive/2006/11/02/Debugging-Javascript-on-a-
Points of Entry (Debuggers)
Technical Security Issues
• Who will be trying to hack the course or assessment?
– Students that do not know the material well enough to pass the course
– Students that want to see if they can beat the system.
– Developers that are testing vulnerabilities.
• What will the hacker be trying to accomplish?
– Modify the score, status, session time, interactions, objectives …
• Most students will only think to modify score and status.
• What is the benefit and risk to the hacker?
– Is the hacker confident that the solution they have (created or found on
the Web) will work on the system they intend to hack? And if it fails, or
if they are detected, what is the risk to them personally?
• Prevention vs. Detection
– Is the goal of the implemented security measure to prevent hacking or
detect hacking once it has occured?
Framing the Issues
• First Line of Defense
– Easy to implement. Stop most weekend hackers.
– Easily circumvented by savvy hackers
• Second Line of Defense
– A bit more difficult to implement
– Stops programmers that do not have knowledge of SCORM
• Third Line of Defense
– Take significant time and skill to implement
– This defense comes down to “Is it worth it to hack?” not “Can it be
hacked?”
– Coupled with Detection and Prosecution there is virtually no reason
for someone to take the risk.
• Fourth Line of defense
– Proctor the exam!
– If the stakes are that high that someone will try to even break the 3rd
line of defense, then there may be a need to have an instructor
present.
Prevention
Stop Them in Their Tracks
Lines of Defense
• Must be logged into the LMS as a student and be able to
access the course to be hacked.
– Remind students not to share passwords and make a strong dis-
incentive for doing so.
• That means if you can detect an attempted hack, you can locate the
account and person responsible.
• Must have the knowledge to perform the hack.
– Gained the knowledge from their own knowledge of programming
• Highest risk to the course
– Gained the knowledge from another hacker (e.g., the Web, word of
mouth)
• Medium risk to the course
• Must have the willingness / incentive to perform the hack
– In most cases, if it is easier to pass the course than implement a hack,
The Basics
Lines of Defense
• Disable right click
– This will keep the student from using the right click functionality to
view the source code of the course
• Obfuscate (scramble) or crunch your JavaScript code
– Use a JavaScript obfuscation application which removes all whitespace
and replaces function and variable names with “a” and “-#-” so the
code becomes virtually unreadable
• Only use Script includes
– This is just a good coding practice in general. Don’t include JavaScript in
with the HTML. Put JavaScript in “.js” files and use <script
src=“myFile.js”></script> to include them in the page.
• Open the course in a new window with the address bar and
toolbar hidden AND disable F11.
• Hide SCORM code in frames
First Line of Defense
Lines of Defense
• Use FLASH
– FLASH is compiled into .swf files, so it is harder to see the code from
within the browser
• FLASH can be decomplied, so obfuscating the code is also an option
• Use more than score and status to determine grade
– Make sure that the course uses objectives, interactions and session
time, along with score and status, to calculate the overall grade.
• The "Fake" API
– Add an API object local to your course, so hackers will find that API and
set values there instead of the real API.
• Set and Terminate
– Set all important data at the LAST possible moment before Terminate()
is called.
Second Line of Defense
Lines of Defense
• Secret SCO
– Create a manifest file with a hidden SCO that must be completed in order for
the course to be passed. Have the assessment SCO set an objective on the
hidden SCO equal to the score on the quiz SCO.
• Hide and Go Seek
– Have the assessment SCO set an encrypted cookie or Flash Shared Object and
then the last SCO of the course looks at this cookie to determine the final
score. The final SCO will not set any score that does not match the score in the
cookie.
• Rollup With a Twist
– Have a combinaton of random objective scores that must be set, and add up to
the proper total, in order to mark the course completed.
• SCO1 : Objective 1 score = .10
• SCO2 : Objective 1 score = .17
• SCO3 : Objective 1 score = .28
• If the total for objectives = .55 then course is passed.
Third Line of Defense
Lines of Defense
• Don’t use SCORM for assessments
– Use a 3rd
party server side assessment service.
• Proctor The Exam!
– This could also be your first and only Line of Defense as well,
depending on the stakes involved.
Fourth Line of Defense
Detection
• On the LMS Side
– Session Time Comparison
• Compare the session time to the actual time the student spent in the SCO.
– Compare results to known averages
• Compare student "X" SCORM data with the average students’ SCORM data.
– Make sure that there is not too much or too little data reported and that it fits
within the "normal" parameters for that course.
• On the SCO Side
– The "Fake" API
• Using the fake API, you can detect when a hack is being attempted on the
fake API, which will be the first one that the would-be hacker will locate.
• Once a hack is detected, the SCO should write some data to the LMS to
signal a breach has occured.
– Set an objective, set an interaction, set suspend_data. You would want to set a
data model element that can be reported on by the LMS.
Trespassers will be prosecuted!
Examples
• First Line of Defense
– Disable Right Click
– Open new window and disable F11
• Second Line of Defense
– Fake the API
– Set and Terminate
• Third Line of Defense
– Rollup With a Twist
"Show Me"
Conclusion
• High stakes assessments should be proctored
• SCORM may not be a good technology choice for non-
proctored high stakes exams.
• There are ways to make courses more difficult to hack, but
this does not prevent physical types of cheating.
• In the end, any type of technical secutiry measure should be
seen as a deturent and not as the ultimate solution. And any
security measure implementation should ultimately be
weighed against the effect the security measure has on
usability.
Resources
• SCORM Security – Some Perspective
– http://www.scorm.com/blog/2009/04/scorm-security-some-
perspective/
• PiPwerks Blog
– http://pipwerks.com/journal/2009/04/02/scorm-security-two-kinds-
of-scorm-people/
• ADL’s Answer
– http://www.adlnet.org/Technologies/scorm/Lists/Announcements/Dis
pForm2.aspx?List=025c59e6-41d3-4496-b4cb-7a3033dea50d&ID=6
• SCORM Vulnerabilities + IMS Spec withdrawal = Excitement
– http://mobilemind.net/2009/04/scorm-vulnerabilities-ims-spec.html
• In the Eye of The SCORM : Assessment Security
– http://www.ostyn.com/standards/docs/Eye_Of_The_SCORM_draft.pdf
Further Research
SCORM Security
• Instructor Lead On-Line Training Seminar
• One-Day of lecture and labs
• Discusses security risks and pros and cons of the solutions
• Learn how the hackers think
– For every security solution demonstrated you will learn the
vulerabilityes so you can assess the risk for yourself.
Hands-On Training
JCA Solutions Hands-On Guide to SCORM Security
http://www.jcasolutions.com/training.php
Contact Info
Brian Caudill
bcaudill@jcasolutions.com
http://www.jcasolutions.com
321-765-4947
Workshop Materials @
www.jcasolutions.com/scorm_securit
y
JCA Solutions

Weitere ähnliche Inhalte

Was ist angesagt?

KubeMonkey를 통한 Chaos Engineering 실전 운영하기 - 윤석찬 (AWS 테크에반젤리스트)
KubeMonkey를 통한 Chaos Engineering 실전 운영하기 - 윤석찬 (AWS 테크에반젤리스트)KubeMonkey를 통한 Chaos Engineering 실전 운영하기 - 윤석찬 (AWS 테크에반젤리스트)
KubeMonkey를 통한 Chaos Engineering 실전 운영하기 - 윤석찬 (AWS 테크에반젤리스트)Channy Yun
 
Armadillos - or how to bypass code readout protection on microcontrollers
Armadillos - or how to bypass code readout protection on microcontrollersArmadillos - or how to bypass code readout protection on microcontrollers
Armadillos - or how to bypass code readout protection on microcontrollersAndrew Tierney
 
SSL Impersonation in 5 minutes or less!
SSL Impersonation in 5 minutes or less!SSL Impersonation in 5 minutes or less!
SSL Impersonation in 5 minutes or less!Chris John Riley
 
Flowable on Kubenetes
Flowable on KubenetesFlowable on Kubenetes
Flowable on KubenetesFlowable
 
AMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does It
AMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does ItAMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does It
AMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does ItNikhil Mittal
 
High-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uringHigh-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uringScyllaDB
 
YOW2018 Cloud Performance Root Cause Analysis at Netflix
YOW2018 Cloud Performance Root Cause Analysis at NetflixYOW2018 Cloud Performance Root Cause Analysis at Netflix
YOW2018 Cloud Performance Root Cause Analysis at NetflixBrendan Gregg
 
Securing Infrastructure with OpenScap The Automation Way !!
Securing Infrastructure with OpenScap The Automation Way !!Securing Infrastructure with OpenScap The Automation Way !!
Securing Infrastructure with OpenScap The Automation Way !!Jaskaran Narula
 
Countering Innovative Sandbox Evasion Techniques Used by Malware
Countering Innovative Sandbox Evasion Techniques Used by MalwareCountering Innovative Sandbox Evasion Techniques Used by Malware
Countering Innovative Sandbox Evasion Techniques Used by MalwareTyler Borosavage
 
Semmle Codeql
Semmle Codeql Semmle Codeql
Semmle Codeql M. S.
 
Pwning the Enterprise With PowerShell
Pwning the Enterprise With PowerShellPwning the Enterprise With PowerShell
Pwning the Enterprise With PowerShellBeau Bullock
 
Exploitation techniques and fuzzing
Exploitation techniques and fuzzingExploitation techniques and fuzzing
Exploitation techniques and fuzzingG Prachi
 
Racing The Web - Hackfest 2016
Racing The Web - Hackfest 2016Racing The Web - Hackfest 2016
Racing The Web - Hackfest 2016Aaron Hnatiw
 
Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019Michel Schudel
 
A whirlwind tour of the LLVM optimizer
A whirlwind tour of the LLVM optimizerA whirlwind tour of the LLVM optimizer
A whirlwind tour of the LLVM optimizerNikita Popov
 
Building Mini Embedded Linux System for X86 Arch
Building Mini Embedded Linux System for X86 ArchBuilding Mini Embedded Linux System for X86 Arch
Building Mini Embedded Linux System for X86 ArchSherif Mousa
 
Blazing Performance with Flame Graphs
Blazing Performance with Flame GraphsBlazing Performance with Flame Graphs
Blazing Performance with Flame GraphsBrendan Gregg
 

Was ist angesagt? (20)

astricon2018
astricon2018astricon2018
astricon2018
 
KubeMonkey를 통한 Chaos Engineering 실전 운영하기 - 윤석찬 (AWS 테크에반젤리스트)
KubeMonkey를 통한 Chaos Engineering 실전 운영하기 - 윤석찬 (AWS 테크에반젤리스트)KubeMonkey를 통한 Chaos Engineering 실전 운영하기 - 윤석찬 (AWS 테크에반젤리스트)
KubeMonkey를 통한 Chaos Engineering 실전 운영하기 - 윤석찬 (AWS 테크에반젤리스트)
 
Armadillos - or how to bypass code readout protection on microcontrollers
Armadillos - or how to bypass code readout protection on microcontrollersArmadillos - or how to bypass code readout protection on microcontrollers
Armadillos - or how to bypass code readout protection on microcontrollers
 
SSL Impersonation in 5 minutes or less!
SSL Impersonation in 5 minutes or less!SSL Impersonation in 5 minutes or less!
SSL Impersonation in 5 minutes or less!
 
Flowable on Kubenetes
Flowable on KubenetesFlowable on Kubenetes
Flowable on Kubenetes
 
AMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does It
AMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does ItAMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does It
AMSI: How Windows 10 Plans to Stop Script-Based Attacks and How Well It Does It
 
Bug Bounty Secrets
Bug Bounty Secrets Bug Bounty Secrets
Bug Bounty Secrets
 
High-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uringHigh-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uring
 
YOW2018 Cloud Performance Root Cause Analysis at Netflix
YOW2018 Cloud Performance Root Cause Analysis at NetflixYOW2018 Cloud Performance Root Cause Analysis at Netflix
YOW2018 Cloud Performance Root Cause Analysis at Netflix
 
Securing Infrastructure with OpenScap The Automation Way !!
Securing Infrastructure with OpenScap The Automation Way !!Securing Infrastructure with OpenScap The Automation Way !!
Securing Infrastructure with OpenScap The Automation Way !!
 
Countering Innovative Sandbox Evasion Techniques Used by Malware
Countering Innovative Sandbox Evasion Techniques Used by MalwareCountering Innovative Sandbox Evasion Techniques Used by Malware
Countering Innovative Sandbox Evasion Techniques Used by Malware
 
Semmle Codeql
Semmle Codeql Semmle Codeql
Semmle Codeql
 
Pwning the Enterprise With PowerShell
Pwning the Enterprise With PowerShellPwning the Enterprise With PowerShell
Pwning the Enterprise With PowerShell
 
Bug Bounty for - Beginners
Bug Bounty for - BeginnersBug Bounty for - Beginners
Bug Bounty for - Beginners
 
Exploitation techniques and fuzzing
Exploitation techniques and fuzzingExploitation techniques and fuzzing
Exploitation techniques and fuzzing
 
Racing The Web - Hackfest 2016
Racing The Web - Hackfest 2016Racing The Web - Hackfest 2016
Racing The Web - Hackfest 2016
 
Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019Cryptography 101 for Java Developers - Devoxx 2019
Cryptography 101 for Java Developers - Devoxx 2019
 
A whirlwind tour of the LLVM optimizer
A whirlwind tour of the LLVM optimizerA whirlwind tour of the LLVM optimizer
A whirlwind tour of the LLVM optimizer
 
Building Mini Embedded Linux System for X86 Arch
Building Mini Embedded Linux System for X86 ArchBuilding Mini Embedded Linux System for X86 Arch
Building Mini Embedded Linux System for X86 Arch
 
Blazing Performance with Flame Graphs
Blazing Performance with Flame GraphsBlazing Performance with Flame Graphs
Blazing Performance with Flame Graphs
 

Ähnlich wie Scorm security

Caveon Webinar Series: The Good and Bad of Online Proctoring
Caveon Webinar Series: The Good and Bad of Online ProctoringCaveon Webinar Series: The Good and Bad of Online Proctoring
Caveon Webinar Series: The Good and Bad of Online ProctoringCaveon Test Security
 
2020 FRSecure CISSP Mentor Program - Class 10
2020 FRSecure CISSP Mentor Program - Class 102020 FRSecure CISSP Mentor Program - Class 10
2020 FRSecure CISSP Mentor Program - Class 10FRSecure
 
Lecture Course Outline and Secure SDLC.ppt
Lecture Course Outline and Secure SDLC.pptLecture Course Outline and Secure SDLC.ppt
Lecture Course Outline and Secure SDLC.pptDrBasemMohamedElomda
 
Ethical Hacking Conference 2015- Building Secure Products -a perspective
 Ethical Hacking Conference 2015- Building Secure Products -a perspective Ethical Hacking Conference 2015- Building Secure Products -a perspective
Ethical Hacking Conference 2015- Building Secure Products -a perspectiveDr. Anish Cheriyan (PhD)
 
Final ProjectCreate a Security Lab Tutorial Look back to t
Final ProjectCreate a Security Lab Tutorial Look back to tFinal ProjectCreate a Security Lab Tutorial Look back to t
Final ProjectCreate a Security Lab Tutorial Look back to tChereCheek752
 
2020 FRSecure CISSP Mentor Program - Class 9
2020 FRSecure CISSP Mentor Program - Class 92020 FRSecure CISSP Mentor Program - Class 9
2020 FRSecure CISSP Mentor Program - Class 9FRSecure
 
Managing Next Generation Threats to Cyber Security
Managing Next Generation Threats to Cyber SecurityManaging Next Generation Threats to Cyber Security
Managing Next Generation Threats to Cyber SecurityPriyanka Aash
 
4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.ppt
4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.ppt4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.ppt
4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.pptgealehegn
 
2020 FRSecure CISSP Mentor Program - Class 8
2020 FRSecure CISSP Mentor Program - Class 82020 FRSecure CISSP Mentor Program - Class 8
2020 FRSecure CISSP Mentor Program - Class 8FRSecure
 
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksStrayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksshyaminfopvtltd
 
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksStrayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksshyaminfotech
 
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksStrayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksvindaniel123
 
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksStrayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksElijahEthaan
 
S1 bits-2-info-sourcing
S1 bits-2-info-sourcingS1 bits-2-info-sourcing
S1 bits-2-info-sourcingcherylyap61
 
OWASP Open SAMM
OWASP Open SAMMOWASP Open SAMM
OWASP Open SAMMintive
 
Defending Enterprise IT - beating assymetricality
Defending Enterprise IT - beating assymetricalityDefending Enterprise IT - beating assymetricality
Defending Enterprise IT - beating assymetricalityClaus Cramon Houmann
 
Owasp joy of proactive security
Owasp joy of proactive securityOwasp joy of proactive security
Owasp joy of proactive securityScott Behrens
 

Ähnlich wie Scorm security (20)

Caveon Webinar Series: The Good and Bad of Online Proctoring
Caveon Webinar Series: The Good and Bad of Online ProctoringCaveon Webinar Series: The Good and Bad of Online Proctoring
Caveon Webinar Series: The Good and Bad of Online Proctoring
 
2020 FRSecure CISSP Mentor Program - Class 10
2020 FRSecure CISSP Mentor Program - Class 102020 FRSecure CISSP Mentor Program - Class 10
2020 FRSecure CISSP Mentor Program - Class 10
 
CYBRScore Course Catalog
CYBRScore Course CatalogCYBRScore Course Catalog
CYBRScore Course Catalog
 
Lecture Course Outline and Secure SDLC.ppt
Lecture Course Outline and Secure SDLC.pptLecture Course Outline and Secure SDLC.ppt
Lecture Course Outline and Secure SDLC.ppt
 
Ethical Hacking Conference 2015- Building Secure Products -a perspective
 Ethical Hacking Conference 2015- Building Secure Products -a perspective Ethical Hacking Conference 2015- Building Secure Products -a perspective
Ethical Hacking Conference 2015- Building Secure Products -a perspective
 
Final ProjectCreate a Security Lab Tutorial Look back to t
Final ProjectCreate a Security Lab Tutorial Look back to tFinal ProjectCreate a Security Lab Tutorial Look back to t
Final ProjectCreate a Security Lab Tutorial Look back to t
 
2020 FRSecure CISSP Mentor Program - Class 9
2020 FRSecure CISSP Mentor Program - Class 92020 FRSecure CISSP Mentor Program - Class 9
2020 FRSecure CISSP Mentor Program - Class 9
 
Managing Next Generation Threats to Cyber Security
Managing Next Generation Threats to Cyber SecurityManaging Next Generation Threats to Cyber Security
Managing Next Generation Threats to Cyber Security
 
4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.ppt
4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.ppt4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.ppt
4_25655_SE731_2020_1__2_1_Lecture 1 - Course Outline and Secure SDLC.ppt
 
2020 FRSecure CISSP Mentor Program - Class 8
2020 FRSecure CISSP Mentor Program - Class 82020 FRSecure CISSP Mentor Program - Class 8
2020 FRSecure CISSP Mentor Program - Class 8
 
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksStrayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
 
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksStrayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
 
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksStrayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
 
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risksStrayer cis 558 week 4 case study 1 mitigating cloud computing risks
Strayer cis 558 week 4 case study 1 mitigating cloud computing risks
 
S1 bits-2-info-sourcing
S1 bits-2-info-sourcingS1 bits-2-info-sourcing
S1 bits-2-info-sourcing
 
OWASP Open SAMM
OWASP Open SAMMOWASP Open SAMM
OWASP Open SAMM
 
CS3391 -OOP -UNIT – III NOTES FINAL.pdf
CS3391 -OOP -UNIT – III  NOTES FINAL.pdfCS3391 -OOP -UNIT – III  NOTES FINAL.pdf
CS3391 -OOP -UNIT – III NOTES FINAL.pdf
 
Defending Enterprise IT - beating assymetricality
Defending Enterprise IT - beating assymetricalityDefending Enterprise IT - beating assymetricality
Defending Enterprise IT - beating assymetricality
 
CapProject.pptx
CapProject.pptxCapProject.pptx
CapProject.pptx
 
Owasp joy of proactive security
Owasp joy of proactive securityOwasp joy of proactive security
Owasp joy of proactive security
 

Kürzlich hochgeladen

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Kürzlich hochgeladen (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Scorm security

  • 2. The "Recent" History • Dr. Bill Blackmon introduces SLAG and Assessment Security (Aug. 23rd , 2006) • Claude Ostyn addresses Assessment Security in "In the Eye of the SCORM" (Last Revised March 2007) • Philip Hutchison posted WORKING bookmarklet on his blog PiPwerks.com (April 2nd , 2009) • SCORM Community reacts – Mike Rustici (scorm.com) responds (April 3rd , 2009) – Tom King (mobilemind.net) responds (April 5th , 2009) • ADL responds (May 31st , 2009) • ADL Implementation Fest Developers’ Workshop : Security Issues in SCORM
  • 3. Types of Security Issues • Physical Security Issues – Open Book, Open System – Student Validation – Plain Old Cheating • Technical Security Issues – Bookmarklet – Script Injection / Script Include – JavaScript Debugger
  • 4. Physical Security Issues • Open Book / Open System – Search the web – Search a book • Student Validation – Who is taking the test? • Plain Old Cheating – Taking screenshots of the exams – Paying / bartering for the answer keys • The list goes on…. Cheaters Should Be Proctored
  • 5. Technical Security Issues • Bookmarklets – JavaScript can be written in the address bar of the browser and made to execute on the current web page loaded in the browser. • http://libgmail.sourceforge.net/googlemaps.html • http://www.gnucitizen.org/blog/bookmark-of-death-domain-hijacking- without-0days/ – Browser support • https://www.squarefree.com/bookmarklets/browsers.html • Script Injection / Script Include – If the bookmarklet is not robust enough, you can use the bookmarklet to embed your own JavaScript files into the web page. – http://leftlogic.com/lounge/articles/bookmarklet-coding/ Points of Entry
  • 6. Technical Security Issues • Internet Explorer – Web Accessibilty Toolkit – Microsoft Script Debugger – Internet Explorer Developer’s Toolbar – IE Script Debugger (View > Script Debugger) IE7 and IE8 • FireFox – Web Accessibilty Toolkit – Fire Bug – FireFox Error Console • Any Browser – Visual Studio 2005 • http://weblogs.asp.net/pglavich/archive/2006/11/02/Debugging-Javascript-on-a- Points of Entry (Debuggers)
  • 7. Technical Security Issues • Who will be trying to hack the course or assessment? – Students that do not know the material well enough to pass the course – Students that want to see if they can beat the system. – Developers that are testing vulnerabilities. • What will the hacker be trying to accomplish? – Modify the score, status, session time, interactions, objectives … • Most students will only think to modify score and status. • What is the benefit and risk to the hacker? – Is the hacker confident that the solution they have (created or found on the Web) will work on the system they intend to hack? And if it fails, or if they are detected, what is the risk to them personally? • Prevention vs. Detection – Is the goal of the implemented security measure to prevent hacking or detect hacking once it has occured? Framing the Issues
  • 8. • First Line of Defense – Easy to implement. Stop most weekend hackers. – Easily circumvented by savvy hackers • Second Line of Defense – A bit more difficult to implement – Stops programmers that do not have knowledge of SCORM • Third Line of Defense – Take significant time and skill to implement – This defense comes down to “Is it worth it to hack?” not “Can it be hacked?” – Coupled with Detection and Prosecution there is virtually no reason for someone to take the risk. • Fourth Line of defense – Proctor the exam! – If the stakes are that high that someone will try to even break the 3rd line of defense, then there may be a need to have an instructor present. Prevention Stop Them in Their Tracks
  • 9. Lines of Defense • Must be logged into the LMS as a student and be able to access the course to be hacked. – Remind students not to share passwords and make a strong dis- incentive for doing so. • That means if you can detect an attempted hack, you can locate the account and person responsible. • Must have the knowledge to perform the hack. – Gained the knowledge from their own knowledge of programming • Highest risk to the course – Gained the knowledge from another hacker (e.g., the Web, word of mouth) • Medium risk to the course • Must have the willingness / incentive to perform the hack – In most cases, if it is easier to pass the course than implement a hack, The Basics
  • 10. Lines of Defense • Disable right click – This will keep the student from using the right click functionality to view the source code of the course • Obfuscate (scramble) or crunch your JavaScript code – Use a JavaScript obfuscation application which removes all whitespace and replaces function and variable names with “a” and “-#-” so the code becomes virtually unreadable • Only use Script includes – This is just a good coding practice in general. Don’t include JavaScript in with the HTML. Put JavaScript in “.js” files and use <script src=“myFile.js”></script> to include them in the page. • Open the course in a new window with the address bar and toolbar hidden AND disable F11. • Hide SCORM code in frames First Line of Defense
  • 11. Lines of Defense • Use FLASH – FLASH is compiled into .swf files, so it is harder to see the code from within the browser • FLASH can be decomplied, so obfuscating the code is also an option • Use more than score and status to determine grade – Make sure that the course uses objectives, interactions and session time, along with score and status, to calculate the overall grade. • The "Fake" API – Add an API object local to your course, so hackers will find that API and set values there instead of the real API. • Set and Terminate – Set all important data at the LAST possible moment before Terminate() is called. Second Line of Defense
  • 12. Lines of Defense • Secret SCO – Create a manifest file with a hidden SCO that must be completed in order for the course to be passed. Have the assessment SCO set an objective on the hidden SCO equal to the score on the quiz SCO. • Hide and Go Seek – Have the assessment SCO set an encrypted cookie or Flash Shared Object and then the last SCO of the course looks at this cookie to determine the final score. The final SCO will not set any score that does not match the score in the cookie. • Rollup With a Twist – Have a combinaton of random objective scores that must be set, and add up to the proper total, in order to mark the course completed. • SCO1 : Objective 1 score = .10 • SCO2 : Objective 1 score = .17 • SCO3 : Objective 1 score = .28 • If the total for objectives = .55 then course is passed. Third Line of Defense
  • 13. Lines of Defense • Don’t use SCORM for assessments – Use a 3rd party server side assessment service. • Proctor The Exam! – This could also be your first and only Line of Defense as well, depending on the stakes involved. Fourth Line of Defense
  • 14. Detection • On the LMS Side – Session Time Comparison • Compare the session time to the actual time the student spent in the SCO. – Compare results to known averages • Compare student "X" SCORM data with the average students’ SCORM data. – Make sure that there is not too much or too little data reported and that it fits within the "normal" parameters for that course. • On the SCO Side – The "Fake" API • Using the fake API, you can detect when a hack is being attempted on the fake API, which will be the first one that the would-be hacker will locate. • Once a hack is detected, the SCO should write some data to the LMS to signal a breach has occured. – Set an objective, set an interaction, set suspend_data. You would want to set a data model element that can be reported on by the LMS. Trespassers will be prosecuted!
  • 15. Examples • First Line of Defense – Disable Right Click – Open new window and disable F11 • Second Line of Defense – Fake the API – Set and Terminate • Third Line of Defense – Rollup With a Twist "Show Me"
  • 16. Conclusion • High stakes assessments should be proctored • SCORM may not be a good technology choice for non- proctored high stakes exams. • There are ways to make courses more difficult to hack, but this does not prevent physical types of cheating. • In the end, any type of technical secutiry measure should be seen as a deturent and not as the ultimate solution. And any security measure implementation should ultimately be weighed against the effect the security measure has on usability.
  • 17. Resources • SCORM Security – Some Perspective – http://www.scorm.com/blog/2009/04/scorm-security-some- perspective/ • PiPwerks Blog – http://pipwerks.com/journal/2009/04/02/scorm-security-two-kinds- of-scorm-people/ • ADL’s Answer – http://www.adlnet.org/Technologies/scorm/Lists/Announcements/Dis pForm2.aspx?List=025c59e6-41d3-4496-b4cb-7a3033dea50d&ID=6 • SCORM Vulnerabilities + IMS Spec withdrawal = Excitement – http://mobilemind.net/2009/04/scorm-vulnerabilities-ims-spec.html • In the Eye of The SCORM : Assessment Security – http://www.ostyn.com/standards/docs/Eye_Of_The_SCORM_draft.pdf Further Research
  • 18. SCORM Security • Instructor Lead On-Line Training Seminar • One-Day of lecture and labs • Discusses security risks and pros and cons of the solutions • Learn how the hackers think – For every security solution demonstrated you will learn the vulerabilityes so you can assess the risk for yourself. Hands-On Training JCA Solutions Hands-On Guide to SCORM Security http://www.jcasolutions.com/training.php

Hinweis der Redaktion

  1. SCORM Learner Assessment Generator (SLAG) A note about SLAG. While SLAG is a good way to hide the assessments and their answers within the &lt;dataFromLMS&gt; tag in the manifest file, it does not stop anyone from directly entering the score into the LMS via the use of bookmarklets. The question is “Do I need the answers to the test to set the score?” The answer depends on the way the exam is coded.
  2. For high stakes assessments students should be proctered otherwise they can, fairly easily, find very non-technical ways to cheat the system. This is not the focus of the presentation, but it is worth mentioning because of 2 reasons (1) These are probabily the first ideas students think of when they are going to cheat and (2) these are the hardest to stop from a pureley techincal stand point.
  3. The resources needed to hack a SCORM course are readily available all over the internet and can be found with a simple Google search. Remember, these are ways to input code into the browser, but they are NOT THE ISSUE. The issue is the actual code that is contained within. The code contained within these techniques depends in who is writing the code, what their knowledge of SCORM is, how much incentive they have to account for every possible combination if security, and the environment they have available to implement and test the hack. Example of Bookmarklets &gt; javascript:alert(‘hello’); Example of Script Injection &gt; http://www.jcasolutions.com/hello.js
  4. I use the term hacker to describe anyone that tries to circumvent the code of the course in order to modify the flow of data. I use the term cheater to mean anyone who tries to misrepresent their knowledge on the subject matter of any given course. So a hack may or may not be used to cheat and a cheater, in most cases, has no reason to hack the system.
  5. First Line of Defense Easy things to implement that will detour the majority of weekend hackers. These are easily implemented and easily circumvented by savvy programmers. In order to break through the first line of defense it may require the use of browser plugins and tools that most users are not aware of. Second Line of Defense These things are a bit more difficult to implement and will stop most savvy programmers that do not have a deep knowledge of the SCORM API and the LMS SCORM API Adapter. Third Line of Defense These are things that require significant time and skill to implement properly and will stop most attacks or at least take quite some time and testing for a hacker to circumvent. This defense comes down to “Is it worth it?” not “Can it be hacked?” Can these defenses be hacked, yes. Is it worth it? Probably not. Couple the Third Line of Defense with intrusion detection and prosecution policy and there is virtually no reason for anyone to take the risk.
  6. With these things in mind there is a fairly small percentage of people that meet all of the criteria to even have the opportunity and need to hack a SCORM course.
  7. These precautions will stop your weekend hackers. The hackers that are scanning code for answers or implementing some code they got off the internet of from a friend.
  8. These items are a bit harder to implement, but are more effective against mid level hackers. These measures will also stop most bookmarklet attacks.
  9. Most security in daily life focuses on Detection and NOT Prevention. Most people have an alarm system on their house and car and many have video cameras watching their valuables at all times. And these measures can cost upwards of $2,000 while the lock on the door cost 25.00 at Home Depot and nothing other than a rock is needed to break into most houses. The rock through the window trick is an all time favorite. This is clearly a focus on detecting the intruder and not preventing them from intruding. Legal deterrents and the risk of detection is what keeps most people safe most of the time. The same basic principle is in effect with Credit Cards. All someone needs to charge items to your credit card is, your credit card (or at least the information written on the outside of the card in plain view). The prevention is that there is a “special” number on the back and you may need to know the address of the owner of the credit card. Not much to prevent me from using the card without permission. However, the Detection is an entirely different story. Credit Card companies employ very sophisticated detection algorithms and hundreds of employees to watch for unauthorized or “suspicious” transactions. And lawmakers give the Credit Card companies the right to prosecute those that are detected. The deterrent for most people is “The amount of money that can be gained is not worth the possible loss of time that could be suffered in jail”. The moral of the story is for high stakes assessments you need to have instructors watching the students and code in the course and in the LMS looking to Detect cheating / hacking and you need to have the authority in place to prosecute the offenders. More on the subject can also be found at http://www.scorm.com/blog/2009/04/scorm-security-some-perspective/