An SEB file patcher.
SEB Icon being "unlocked".
SEBroken
is a .seb
file patcher, essentially, it allows you to modify certain parts of the file more easily.1
SEB stands for Safe Exam Browser.
An SEB file is the configuration file for it, it has the extension of .seb
.
The full file standard can be viewed here, but basically, how a valid .seb
file is created is by:
- taking a p-list XML file with the appropriate keys;
- compressing the contents of it;
- encrypting and prefixing it;
- compressing it once more.
The encryption
password is then used as the password that you enter to use the config file/enter the exam.
cough Why not 😄 2
SEB + "Mind Broken" = SEBroken
, :pepega:
Check out the advanced instructions (for development/linux) here.
1. Open the .exe
file from releases.
You should now see the following:
This has to be an absolute path.
You can press the Browse
button to open up a file selector.
This is the encryption password, we won't be able to patch the file without it.
If you're planning to do further modifications using the configuration tool from SEB, you'll need to have access to the admin/quit password of the file.
By default the password will be changed to password
, but if you'd like, you could change it to anything else.
By changing the configured hash, you'll be able to log in using the newly configured password.
In Optional Arguments
you can change a few things to do more "advanced" patches.
NOTE: Launching via this method is not recommended, YMMV.
There has been found multiple blocking installation issues with Gooey, which is the library I used for GUI.
As such, if you do encounter any issues during installation, please do not consult me regarding it.
When setting up the development environment, it's recommended to create a virtualenv
first. This is to prevent dependency conflicts.
Once you're booted into the virtualenv
, install the requirements, and execute the main.py
file to start up the GUI.
(i.e. python main.py
)
-
This is intended for malicious purposes, isn't it?
Uh, "no"?
A tool is a tool, how it's used is up to the wielder of the tool, I am not to be blamed if your students use this for malicious purposes. -
Okay, but what if they do use it for malicious purposes?
Well, for one, "where there's a will, there's a way", this goes both ways, the proverb never mentions that that will has to be for good, nor bad.
If your students are already coming into the exam with malintent, there really isn't much of anything that you can "do" to completely prevent it.
Regardless, there are a few ways to "defend" against the use of this tool in your exams:-
Change the how you do your exams
The exams that are "vulnerable" to this are exams that allow the use of, (a) individual devices; (b) manual loading of the SEB file.
To prevent "abuse" of this, all you need to really do is disallow/prevent any of those factors. -
Do a checksum check on the config file
This is a slight bit more manual and "overkill" than the other method, but continuous monitoring really is the only "fool-proof" way to prevent abuse of tools like this.
Prior to entering SEB, check the hash of.seb
file and compare it to your sample's, if they don't match then you can be certain that the file has been modified in some way or another.
-
"Where there's a will, there's a way."
Footnotes
-
Given that you know the
encryption
password, more info in here. ↩ -
My school"A-certain-organization-that-I'm-currently-affiliated-with" has announced that the standard that they are going to use for an upcomingfinal exams"a competency examination" is going to be changed from Google Forms to Safe Exam Browser + Google Forms. ↩