Meta: Move SerenityOS.org website to separate repository

Our website is now hosted on GitHub pages, and published through this
new repository:

  https://github.com/SerenityOS/serenityos.org
This commit is contained in:
Jelle Raaijmakers 2024-11-01 16:36:16 +01:00
parent 549699ac8b
commit 1da66b51fc
189 changed files with 0 additions and 1473 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 KiB

View file

@ -1,66 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>SerenityOS bug bounty program</title>
<style>
body {
background: black;
color: lime;
font-family: monospace;
font-size: 14pt;
}
a {
font-weight: bold;
text-decoration: underline;
}
a:link, a:visited {
color: cyan;
}
a:active {
color: red;
}
</style>
</head>
<body>
<h1>SerenityOS bug bounty program :^)</h1>
<p>
Like any respectable software project, <a href="https://www.serenityos.org/">SerenityOS</a>
also runs a bug bounty program.
I don't have a huge budget, but I want to reward good honest work.
</p>
<p>
I will pay <b>$50</b> USD for exploitable bugs in these categories:
</p>
<ul>
<li>Remote code execution.</li>
<li>Local privilege escalation.</li>
<li>Arbitrary code execution in the Browser when loading a remote web page.</li>
</ul>
<p><b>Rules</b></p>
<ul>
<li>No rewards for bugs you caused yourself.</li>
<li>The PoC exploit needs to work against the master branch at the time of claim.</li>
<li>Max 3 bounties per person.</li>
<li>No duplicates. If a bug is already reported, only the earliest reporter may claim the reward. This includes bugs found by continuous fuzzing systems.</li>
<li>No rewards for bugs that require unlikely user interaction or social engineering.</li>
<li>Remote bugs must be exploitable with an unmodified "default setup" of SerenityOS. Bugs in programs that are not started by default don't qualify.</li>
<li>The PoC exploit needs to work on a QEMU-emulated CPU that supports SMAP, SMEP, UMIP, NX, WP, and TSD natively.</li>
<li>SerenityOS always runs with assertions enabled, so you'll need to find a way around them.</li>
</ul>
<p>
To claim a reward, get in touch with me either on the <a href="https://discord.gg/serenityos">SerenityOS Discord</a> (<i>awesomekling#1985</i>) or via <b><a href="mailto:kling@serenityos.org">kling@serenityos.org</a></b>. (And even if you are not interested in the reward, I'd still like to hear about any exploits!)
</p>
<p><b>Past exploits:</b></p>
<ul>
<li><b>2021-03-04:</b> <b>Iliad</b> used a VLA stack overflow in the TCP implementation to smash a nearby kernel stack and become root. (<a href="https://abigpickle.github.io/posts/2021/03/serenityos-kernel-hacking-adventures/">Writeup and exploit</a>)</li>
<li><b>2021-02-18:</b> <b>cees-elzinga</b> combined a ptrace race condition with an ASLR bypass to modify <code>/etc/passwd</code> and become root. (<a href="https://github.com/SerenityOS/serenity/issues/5230">Bug report and exploit</a>)</li>
<li><b>2021-02-11:</b> <b>vakzz</b> wrote the first-ever full chain exploit, stringing together a LibJS bug and a kernel bug to create a web page that got root access when viewed in our browser. (<a href="https://devcraft.io/2021/02/11/serenityos-writing-a-full-chain-exploit.html">Writeup and exploit</a>)</li>
<li><b>2020-12-22:</b> <b>ALLES! CTF</b> found a kernel LPE due to missing EFLAGS validation in <code>ptrace()</code>. (<a href="https://github.com/allesctf/writeups/blob/master/2020/hxpctf/wisdom2/writeup.md">Writeup and exploit</a>)</li>
<li><b>2020-12-20:</b> <b>yyyyyyy</b> found a kernel LPE due to a race condition between <code>execve()</code> and <code>ptrace()</code>. (<a href="https://hxp.io/blog/79/hxp-CTF-2020-wisdom2/">Writeup and exploit</a>)</li>
<li><b>2020-03-30:</b> <b>\0</b> claimed <font color="green"><b>$5</b></font> for reporting that the documentation neglects to mention that the default <b>anon</b> user can use <code>su</code> to become <b>root</b> by default. <a href="kiwis4kiwi.png">Donated to "Kiwis for Kiwi" charity as per \0's request.</a> Fixed with <a href="https://github.com/SerenityOS/serenity/commit/ec91d2eb9febafd82de3b30bd76fb621f3da5026">this commit</a>.</li>
<li><b>2019-12-30:</b> <b>Fire30</b> found a kernel LPE due to bad userspace pointer validation. (<a href="https://github.com/Fire30/CTF-WRITEUPS/tree/master/36c3_ctf/wisdom">Writeup and exploit</a>)</li>
<li><b>2019-12-29:</b> <b>braindead</b> found a kernel LPE due to a TOCTOU bug in <code>clock_nanosleep()</code>. (<a href="https://github.com/braindead/ctf-writeups/tree/master/2019/36c3/wisdom">Writeup and exploit</a>)</li>
</ul>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 221 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 KiB

View file

@ -1,9 +0,0 @@
<html>
<head>
<meta http-equiv="refresh" content="1;https://github.com/SerenityOS/serenity/blob/master/Documentation/FAQ.md">
<title>SerenityOS FAQ</title>
</head>
<body>
<a href="https://github.com/SerenityOS/serenity/blob/master/Documentation/FAQ.md">SerenityOS FAQ</a>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 266 B

View file

@ -1,38 +0,0 @@
<html>
<head>
<title>Sponsor SerenityOS on GitHub!</title>
<style>
.pinkbar {
padding: 4;
background-color: #ea4aaa;
text-align: center;
color: white;
}
.pinkbar a:link {
color: white;
}
</style>
</head>
<body>
<center>
<h1>Sponsor SerenityOS on GitHub!</h1>
<img src="mona.png"><br>
<div style="margin-left: auto; margin-right: auto; width: 440; text-align: left;">
<p><blink><b>Hello friends!</b></blink></p>
<p>As of October 19 2019, I am in the <a href="https://github.com/sponsors/awesomekling/">GitHub Sponsors program</a>!</p>
<p>This means you can support my work with a monthly donation via their platform.</p>
<p>There are six tiers: <b>$1</b>, <b>$5</b>, <b>$10</b>, <b>$20</b>, <b>$50</b> and <b>$100</b>.</p>
<p>Sponsorships are (optionally) visible on your GitHub user card.</p>
<p>I will remain on <a href="https://patreon.com/serenityos">Patreon</a> as well, with the same tiers.</p>
<p>Thank you for checking it out :^)</p>
<p class="pinkbar"><b>Andreas</b>
(
<a href="https://github.com/awesomekling">GitHub</a> |
<a href="https://youtube.com/c/AndreasKling">YouTube</a> |
<a href="https://twitter.com/awesomekling">Twitter</a> |
<a href="https://patreon.com/serenityos">Patreon</a> |
<a href="https://paypal.me/awesomekling">PayPal</a> )
</p>
</div>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 365 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 286 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 298 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 293 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 357 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 336 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 367 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 316 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 446 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 441 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 364 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

View file

@ -1,217 +0,0 @@
<html>
<head><title>SerenityOS: From zero to HTML in a year</title></head>
<body>
<h1>SerenityOS: From zero to HTML in a year</h1>
<p>
<blink><b>Hello friends!</b></blink>
</p>
<p>
The Serenity operating system turns 1 year old today. I'm counting
from the <a href="https://github.com/SerenityOS/serenity/commit/5a300551574451fbf509685d11095bda4fcb20be">first commit</a> in the
<a href="https://github.com/SerenityOS/serenity/">git repository</a>,
on October 10, 2018.
Parts of the code had been around for a while before that, so this
first commit was really about putting everything I was tinkering
with into a shared repo.
</p>
<p>Anyways... we have to start somewhere!</p>
<p>
<b>NOTE:</b> This web page is very light on HTML/CSS features so that it
can be rendered by Serenity's own Browser!
</p>
<p>
In the beginning there were four components:
</p>
<ul>
<li>The AK utility library</li>
<li>An ELF executable loader</li>
<li>An ext2 filesystem parser</li>
<li>A simple GUI toolkit on top of SDL</li>
</ul>
<p>
These were just some little C++ projects I had been tinkering with
after installing Slackware 11 on an old PC to do some hacking.
None of them were very mature, but it was fun, and I was in a place
where I needed to do some programming to find myself again.
</p>
<p>
Here's how the ext2 filesystem parser looked like when running:
</p>
<pre>
::&gt;cd /home/andreas
::&gt;ls -l
[VFS] ls ///home/andreas -&gt; ext2fs 01:00000017
01:00000017 drwxr-xr-x 1024 2018-10-08 13:47:04 ./
01:00000016 drwxr-xr-x 1024 2018-10-02 23:43:49 ../
01:00000018 -rw-r--r-- 18 2018-10-02 23:44:09 file1
01:00000019 -rw-r--r-- 18 2018-10-02 23:44:14 file2
::&gt;
</pre>
<div>
<p><b>2018-10-10:</b> The first ever "screenshot" of what became Serenity:</p>
<a href="2018-10-10.png"><img src="thumb.2018-10-10.png"></a>
</div>
<p>
I imported a little x86 kernel I had been working on earlier in
the year. It was a piece of crap, but it was a place to start.
I originally had some weird idea that kernels should be written
in C, so I had tried to write in C, but I thankfully realized very
quickly that I was being silly. :^)
</p>
<div>
<p><b>2018-11-08:</b> Serenity running inside a virtual machine:</p>
<a href="2018-11-08.png"><img src="thumb.2018-11-08.png"></a>
</div>
<p>
I kept working on the GUI toolkit on my Linux system, while also
developing the standalone system. This is how far I got with the
GUI while it was still sitting on top of SDL on Linux:
</p>
<div>
<p><b>2019-01-09:</b> The "Widgets" test program in an SDL framebuffer:</p>
<a href="2019-01-09.png"><img src="thumb.2019-01-09.png"></a>
</div>
<p>
I then decided it was time to get this running on top of Serenity's
own kernel. A day later, I saw this running in a VM for the first time.
It was the most beautiful thing I had ever seen.
</p>
<div>
<p><b>2019-01-10:</b> Serenity booting into a GUI for the first time:</p>
<a href="2019-01-10.png"><img src="thumb.2019-01-10.png"></a>
</div>
<p>
I started working on a userspace API for doing GUI stuff. The original
version was a monstrosity with the window server running in the kernel
and processes making syscalls to create windows, etc.
</p>
<div>
<p><b>2019-01-21:</b> Seeing how many "guitest" processes I can spawn:</p>
<a href="2019-01-21.png"><img src="thumb.2019-01-21.png"></a>
</div>
<div>
<p><b>2019-02-03:</b> Added FontEditor and Clock, ported GNU bc:</p>
<a href="2019-02-03.png"><img src="thumb.2019-02-03.png"></a>
</div>
<div>
<p><b>2019-02-08:</b> Wallpaper support, a "top" program, and more:</p>
<a href="2019-02-08.png"><img src="thumb.2019-02-08.png"></a>
</div>
<div>
<p><b>2019-02-11:</b> First implementation of menus! And a very early FileManager:</p>
<a href="2019-02-11.png"><img src="thumb.2019-02-11.png"></a>
</div>
<div>
<p><b>2019-02-28:</b> Early version of ProcessManager (today called SystemMonitor):</p>
<a href="2019-02-28.png"><img src="thumb.2019-02-28.png"></a>
</div>
<p>
Somewhere around here I figured it would be cool to add networking support,
so I started building a network stack.
</p>
<div>
<p><b>2019-03-12:</b> My host machine is pinging me!</p>
<a href="2019-03-12.png"><img src="thumb.2019-03-12.png"></a>
</div>
<div>
<p><b>2019-03-15:</b> The first thing I did when TCP kinda worked was build an IRC client:</p>
<a href="2019-03-15.png"><img src="thumb.2019-03-15.png"></a>
</div>
<div>
<p><b>2019-03-29:</b> Using FileManager to drive development of tree and icon views:</p>
<a href="2019-03-29.png"><img src="thumb.2019-03-29.png"></a>
</div>
<div>
<p><b>2019-04-11:</b> First screenshot of VisualBuilder, a Visual Basic inspired GUI design tool:</p>
<a href="2019-04-11.png"><img src="thumb.2019-04-11.png"></a>
</div>
<div>
<p><b>2019-04-20:</b> I made a Snake game. You gotta have snake!</p>
<a href="2019-04-20.png"><img src="thumb.2019-04-20.png"></a>
</div>
<div>
<p><b>2019-04-22:</b> First semi-successful GCC port. It can only compile small C programs:</p>
<a href="2019-04-22.png"><img src="thumb.2019-04-22.png"></a>
</div>
<div>
<p><b>2019-06-14:</b> Started building PaintBrush, a simple painting application:</p>
<a href="2019-06-14.png"><img src="thumb.2019-06-14.png"></a>
</div>
<div>
<p><b>2019-07-14:</b> After the system got basic sound support, I built Piano, a desktop synthesizer:</p>
<a href="2019-07-14.png"><img src="thumb.2019-07-14.png"></a>
</div>
<div>
<p><b>2019-08-27:</b> New menu look inspired by Microsoft circa 2002:</p>
<a href="2019-08-27.png"><img src="thumb.2019-08-27.png"></a>
</div>
<div>
<p><b>2019-09-09:</b> Ladies and gentlemen, we've got DOOM:</p>
<a href="2019-09-09.png"><img src="thumb.2019-09-09.png"></a>
</div>
<div>
<p><b>2019-09-29:</b> Working on basic CSS support in LibHTML:</p>
<a href="2019-09-29.png"><img src="thumb.2019-09-29.png"></a>
</div>
<div>
<p><b>2019-10-10</b> Viewing <b>this webpage</b> in Serenity's Browser!</p>
<a href="2019-10-10.png"><img src="thumb.2019-10-10.png"></a>
</div>
<p>
And with that, this little screenshot tour of the first year of Serenity is over.
</p>
<p>
If you would like to see more, I've also been making regular monthly update videos
throughout the year:
</p>
<ul>
<li><a href="https://www.youtube.com/watch?v=hE52D-zbX3g">Serenity OS update (March 2019)</a></li>
<li><a href="https://www.youtube.com/watch?v=RBr5If8GrM4">Serenity OS update (April 2019)</a></li>
<li><a href="https://www.youtube.com/watch?v=KHpGvwBTRxM">Serenity OS update (May 2019)</a></li>
<li><a href="https://www.youtube.com/watch?v=-SQP3E67bnc">Serenity OS update (June 2019)</a></li>
<li><a href="https://www.youtube.com/watch?v=YfTAezcRPs8">Serenity OS update (July 2019)</a></li>
<li><a href="https://www.youtube.com/watch?v=h76Ah4oKfKE">Serenity OS update (August 2019)</a></li>
<li><a href="https://www.youtube.com/watch?v=vK0h_Ih4dw4">Serenity OS update (September 2019)</a></li>
</ul>
<p>
To all the boys and girls who have helped out in the last year, with code, bug reports,
docs, commenting on videos, e-mailing, hanging out on IRC, retweeting, telling your friends, etc,
thank you! I'm so grateful for all the love this project has been getting.
</p>
<p>
And also, a huge <b>thank you!</b> to everyone who has supported me via
<a href="https://patreon.com/serenityos">Patreon</a>
and other donation methods! It's my dream to turn this into a full time show some day,
and you're a huge part of keeping that dream alive. :)
</p>
<p>
Let's see what we can do in year 2!
</p>
<p>
<i>Andreas Kling, 2019-10-10</i>
</p>
<p>
<a href="https://github.com/awesomekling">GitHub</a> |
<a href="https://youtube.com/c/AndreasKling">YouTube</a> |
<a href="https://twitter.com/awesomekling">Twitter</a> |
<a href="https://patreon.com/serenityos">Patreon</a> |
<a href="https://paypal.me/awesomekling">PayPal</a>
</p>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 544 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 249 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 163 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 191 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 210 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 210 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 217 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 272 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 188 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 271 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 325 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 365 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 286 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 298 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 293 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 357 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 336 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 367 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 316 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 446 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 441 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 364 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Some files were not shown because too many files have changed in this diff Show more