forked from ctfs/resources
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
3579acd
commit cbe02fc
Showing
12 changed files
with
37 additions
and
76 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,21 @@ | ||
#Caesar Cipher | ||
|
||
The [Caesar Cipher](https://en.wikipedia.org/wiki/Caesar_cipher) is a very simple and common encryption method which does not appear often in full-fledged CTFs but forms part of the basis of cryptography. It simply shifts a string of letters a certain number of positions up or down the alphabet. | ||
The Caesar Cipher is a very simple and common encryption method which shifts a string of letters a certain number of positions up or down the alphabet. | ||
|
||
Let's say we want to encrypt the string `hello world` to give to our friend whose favorite number is 3. We will shift our string **left 3**. | ||
##Use | ||
|
||
Taking the first letter `h` in our string and going 3 places up the alphabet(as it is a left shift) gives us the letter `e`. We then start our new, encrypted string with the letter. | ||
* Create: | ||
|
||
Doing so for the whole original string creates a jumbled mess of incomprehensible letters to anyone but the reader with the proper decryption shift: | ||
* Online [here](https://tools.zenverse.net/caesar-cipher/) | ||
|
||
**Original:** `hello world` | ||
* [Python script](https://www.stealthcopter.com/blog/2009/12/python-cryptography-caesar-shift-encryption-shift-cipher/) | ||
|
||
**Final:** `ebiil tloia` | ||
* Crack: | ||
|
||
To let our friend read this, we would send him the final string with the instructions **right 3**, and either by hand, with a website, or with a script, he would be able to extract our message. | ||
* Online [here](https://tools.zenverse.net/caesar-cipher/) | ||
|
||
##Detecting | ||
* [Bash script](https://www.linux-support.com/cms/chris-lamb-decrypting-the-caesar-cipher-using-shell/) | ||
|
||
Caesar ciphers are usually presented in very low-point tasks, if at all, and can be easy to detect and check for. Strings containing incomprehensibly jumbled letters are possible Caesar ciphers and should be checked. | ||
##More | ||
|
||
##Solving | ||
|
||
There are many approaches to cracking Caesar ciphers, but usually the best way to solve them is to write a script or run the string through [a website](https://www.xarg.org/tools/caesar-cipher) which will print out all the possible shifts of a string. From those results the most comprehensible and logical solution can be chosen. | ||
|
||
##CTF Example | ||
|
||
*To-do* | ||
|
||
##Sources/See More | ||
|
||
[Brute force caeser cipher cracker](https://nayuki.eigenstate.org/page/automatic-caesar-cipher-breaker-javascript) | ||
[Caesar Cipher](https://en.wikipedia.org/wiki/Caesar_cipher) |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,13 @@ | ||
#RSA | ||
|
||
*To-do* | ||
RSA is a public-key cryptosystem which uses a public-private key pair to encrypt and decrypt information securely. | ||
|
||
##Detecting | ||
##Use | ||
|
||
*To-do* | ||
* RSA library in [python](https://pypi.python.org/pypi/rsa) with easy to use [docs](https://stuvel.eu/files/python-rsa-doc/usage.html) | ||
|
||
##Solving | ||
* [Thorough explanation](https://www.muppetlabs.com/~breadbox/txt/rsa.html) of RSA with a [simple crack example](https://www.muppetlabs.com/~breadbox/txt/rsa.html#13) | ||
|
||
*To-do* | ||
##More | ||
|
||
##CTF Example | ||
|
||
BackdoorCTF 2014 had an RSA challenge which simply provided a [public key](ctfexample-key.pub) and encrypted [text file](ctfexample-text.txt). | ||
|
||
The solution can be found [here](https://singularityctf.blogspot.ru/2014/03/backdoorctf-2014-writeup-crypto-100-eng.html). | ||
|
||
##Sources/See More | ||
|
||
[CTF Write-up](https://singularityctf.blogspot.ru/2014/03/backdoorctf-2014-writeup-crypto-100-eng.html) | ||
[RSA](https://en.wikipedia.org/wiki/RSA_algorithm) |
This file was deleted.
Oops, something went wrong.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,13 @@ | ||
#Steganography | ||
|
||
> Steganography is the art or practice of concealing a message, image, or file within another message, image, or file. - [Wikipedia](https://en.wikipedia.org/wiki/Steganography) | ||
1. If the file is an image, see [File in an Image](./file-in-image/) or [Hidden Text](./invisible-text/] | ||
|
||
In the context of CTFs steganography usually involves finding the hints or flags that have been hidden with steganography. Most commonly a media file will be given as a task with no further instructions, and the participants have to be able to uncover the message that has been encoded in the media. | ||
|
||
###Example | ||
|
||
Images are a very common medium for steganography, as they are easy to manipulate and simple to view and transport. [Files in Images](file-in-image) give a good introduction for beginner steganography. | ||
##About | ||
|
||
##Getting Started | ||
Steganography involves concealing a message, image, or file within anotVher message, image, or file. | ||
|
||
A rudimentary knowledge of media filetypes (e.g. jpg, bmp, png for pictures and wav, mp3 for sound) is essential to steganography, as understanding in what ways files can be hidden and obscured is crucial. Also, understanding basic linux is important, as a multitude of tools are specifically for bash. | ||
|
||
##Sources/See More | ||
In the context of CTFs steganography usually involves finding the hints or flags that have been hidden with steganography. Most commonly a media file will be given as a task with no further instructions, and the participants have to be able to uncover the message that has been encoded in the media. | ||
|
||
##More | ||
|
||
[Steganography](https://en.wikipedia.org/wiki/Steganography) |