Enoch Yu
Latest Posts
Below are my solutions to Bandit level 5 to 9 continuing from Level 0-4. Let’s get started~!!
Level 5
Task
Below is the task for Level 5.
Find the password that is stored in the only file in the "inhere" directory that is human-readable.
My Solution
First, I ran the following commands to list all the files in the “inhere” directory.
ls
cd inhere
ls -a
In the “inhere” directory, there were ten files named “-file00” to “-file09”. To find the human-readable file, the type of each file must be known.
As for my second project, I decided to make a stopwatch. After reading and watching numerous tutorials, I was able to understand the general logic of JavaScript stopwatch. The stopwatch and source code are available. Please enjoy, and provide any feedback!!
Introducing Project 2
The stopwatch that I created behaves like any other stopwatch. It can start, pause, resume, and reset the counter accurately. Surprisingly, the general logical structure was much more easier to come up with than my first project. The method to calculate the elapsed time is finding the difference between current time and the time when the stopwatch started. The function Date.now() will call the current time from the local machine up to milliseconds! Below is a more detailed explanation with source code.
One of the most recommended way to learn Linux commands and basics in CTF is completing Bandit from OverTheWire. Therefore, I decided to complete this challenge first before any other CTF challenges. Here, I am planning to share task, my approach, and lessons that I learned from each level. Moreover, I sincerely wish to express my gratitude towards the developers of this platform! Then, let’s get started!
Level 0
Task
Below is the task for Level 0.
For my first JavaScript mini-project, I decided to create a Coffee Shop simply because I love coffee and coffee shops. For your reference, here is the Coffee Shop and the source code of the project. Please feel free to leave any feedback in the comment section below for improvements!!
Introducing Project 1
In this project, I wanted each phase to be separated with new sections and slides. With each input, the robot receiving the order will retain the information and utilize it in next phase. To practice using <div> tag in html, I decided to change the background color and robot’s expression in new slides. Notice that when the customer entered a value that is not in the menu, the robot’s expression will change. Moreover, in the last phase, the brew time is equal to two times the number of coffee ordered.
If you have read the first post, you probably know that I recently started studying for Capture the Flag (CTF) events. As I dive deeper into this new challenge, I decided to record my journey because why not? Through this blog, I hope to bring positive influence to all who are starting CTF challenges. Moreover, because I am not a professional in this field, any feedback are welcomed. Then, let’s get started!!
This post discusses about the recent emotional deterioration that I faced. If you are currently undergoing a challenge, I sincerely wish you to cheer up!!
The Disqualification
One may wonder: how big of a challenge can a high school student face? Well, I believe regardless of age, countless people encounter emotional challenges. For instance, failing an exam, receiving rejections, and breaking-up with the significant other may cause distress. As a student who wishes to major in pure mathematics, disqualifying from the second stage of team selecting process for the IMO (International Mathematical Olympiad) hit me hard.
When I first decided to write my blog, I was thrown into bunch of options. I noticed that many of my favorite mathematicians including professor Terence Tao uses wordpress.com. However, I noticed that wordpress.com would generally give less control over my blog, and must pay to utilize many of the features. There I wondered, why don’t I build one myself?
Static Site Generator (SSG)
I had two options of hosting via CMS (Content Management System) or hosting through SSG (Static Site Generator). The main difference is that CMS like Wordpress creates contents dynamically, whereas SSG is simply showing the users a pre-built sites. Here, I realized that most of my blogs would be text based, and does not require dynamic features such as user accounts. Moreover, sites created with SSG is much faster and secure compared to ones created with CMS since no server-side processing is required when accessing.