Skip to content

Commit

Permalink
reorganization
Browse files Browse the repository at this point in the history
  • Loading branch information
cabreraalex committed Jun 3, 2014
1 parent 53330a9 commit 6b3c505
Show file tree
Hide file tree
Showing 8 changed files with 17 additions and 71 deletions.
13 changes: 5 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,23 @@

This repository aims to be an archive of information, tools, and references regarding CTF competitions.

CTFs, especially for beginners, can be very daunting and almost impossible to approach. With some general overviews of common CTF subjects and more in-depth research and explanation in specific topics both beginners and veterans can learn, contribute, and collaborate to expand their knowledge.
CTFs, especially for beginners, can be very daunting and almost impossible to approach. With some general overviews of common CTF topics and more in-depth research and explanation in specific technologies both beginners and veterans can learn, contribute, and collaborate to expand their knowledge.

##Quick Start

1. First time? Read down below to learn more about CTFs, and then use the resources in the [topics](./topics/) directory to try to solve challenges on websites like [OverTheWire](https://overthewire.org/wargames/) or [CanYouHack.it](https://canyouhack.it/).
1. First time? [READ THIS!](https://trailofbits.github.io/ctf/) and then the section below. Once you understand the basics, use the resources in the [topics](./topics/) directory to try to solve challenges on websites like [OverTheWire](https://overthewire.org/wargames/) or [CanYouHack.it](https://canyouhack.it/).

2. Beginner? Use the guides found in the [topics](./topics/) directory to try to find out what type of challenges you are presented with and participate in some of the CTFs on [ctftime](https://ctftime.org/).

3. Intermediate? Navigate straight to the topic you are interested in to find extra online resources to help you solve more complex challenges.

4. Master? Help improve this repository! Have a new type of vulnerability you want to explain? Write about it and how to use it! Have a new tool people can use? add it to the tools directory!

##What is a CTF?
##What are CTFs?

CTFs are computer security/hacking competitions which generally consist of participants breaking, investigating, reverse engineering and doing anything they can to reach the end goal, a "flag" which is usually found as a string of text.

[DEF CON](https://en.wikipedia.org/wiki/DEF_CON) hosts what is the most widely known and first major CTF, occurring annually at the hacking conference in Las Vegas. Many different competitions have branched off since then, and numerous ones are available year round. One of the best places to see when CTFs are being scheduled is [ctftime](https://ctftime.org/), an active website with calendars and team rankings.
[DEF CON](https://en.wikipedia.org/wiki/DEF_CON) hosts what is the most widely known and first major CTF, occurring annually at the hacking conference in Las Vegas. Many different competitions have branched off since then, and numerous ones are available year round. One of the best places to see when CTFs are being scheduled is [CTFTime](https://ctftime.org/), an active website with calendars and team rankings.

###Example

Expand All @@ -28,8 +28,5 @@ A very simple type of CTF challenge consists of looking at the source code of we

###Moving On

You may be able to solve some CTF challenges after looking through the documents in this repository and understanding the basics of the technologies and subjects covered, but you won't be very proficient or successful for long. To be an adept CTF competitor you have to be able to combine many different strategies and tools to find the flag. Developing the ability to find flags quickly takes practice more than anything, and participating in numerous CTFs will allow you to expand your understanding and abilities, leading you to success.
You may be able to solve some CTF challenges after looking through the documents in this repository and understanding the basics of the technologies and subjects covered, but you won't be very proficient or successful for long. To be an adept CTF competitor you have to be able to combine many different strategies and tools to find the flag. Developing the ability to find flags quickly takes practice more than anything, and participating in numerous CTFs will allow you to expand your understanding and abilities, leading you to success. Spend some time on [CTFTime](https://ctftime.org/) working through CTFs to truly improve and learn.

##Conclusion

Now that you know the basics of CTFs, you can visit [ctftime](https://ctftime.org/) and try out a CTF! Using your background knowledge and the information on this page you'll be able to develop a solid basis in computer security.
7 changes: 0 additions & 7 deletions contributing/README.md

This file was deleted.

25 changes: 0 additions & 25 deletions contributing/TECH_EXAMPLE.md

This file was deleted.

4 changes: 3 additions & 1 deletion topics/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,10 @@ CTF challenges are usually categorized into one of these broad groups, and altho

4. If the file provided is not readily identifiable, the best tool to use is the [file](../tools/file/README.md) command, which tells you what type of file it is.

* If the file output is PCAP or relating to packets, the challenge is a [web](./web) one.
* If the file output is PCAP or relating to packets or the web, the challenge is likely a [web](./web) one.

* If the file output is an ELF file, it is most likely a [reversing](./reversing/) challenge.

* If the file output is an executable, it is most likely a [reversing](./reversing/) challenge.

* Last resort, google the output of the `file` command on the file
1 change: 0 additions & 1 deletion topics/cryptography/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,3 @@ kxn iye lbedec
##Sources/See More

[Introduction to Cryptography](https://www.cs.umd.edu/~waa/414-F11/IntroToCrypto.pdf)

16 changes: 0 additions & 16 deletions topics/miscellaneous/README.md

This file was deleted.

18 changes: 6 additions & 12 deletions topics/reversing/README.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,13 @@
#Reversing

Reversing in the context of CTFs is usually the reverse engineering of software (executables/bin files) into assembly code and at times the original source code to understand what is happening in a program, break a program (e.g. buffer overflows), or to decrypt encryptions done by a program. Challenges related to reversing are usually not as easy to pick up on as others, and require a lot of diligence and learning to truly understand and be able to tackle.

###Example
##Quick Start

*To-Do*

##Getting Started
*To-do*

There are multiple resources to begin learning about low-level programming in assembly and the like, but one very thorough resource is [Reverse Engineering for Beginners](https://github.com/dennis714/RE-for-beginners), an extremely well-written and verbose free book which explains multiple CPU instruction sets and methods for writing and understanding them.
##About

##Sources/See More

[File command](https://unixhelp.ed.ac.uk/CGI/man-cgi?file)
Reversing in the context of CTFs is usually the reverse engineering of software (executables/bin files) into assembly code and at times the original source code to understand what is happening in a program, break a program (e.g. buffer overflows), or to decrypt encryptions done by a program. Challenges related to reversing are usually not as easy to pick up on as others, and require a lot of diligence and learning to truly understand and be able to tackle.

[IDA](https://www.hex-rays.com/products/ida/)
##Getting Started

[Reverse engineering for beginners](https://github.com/dennis714/RE-for-beginners)
* [Reverse Engineering for Beginners](https://github.com/dennis714/RE-for-beginners) - an extremely well-written and verbose free book which explains multiple CPU instruction sets and methods for writing and understanding them.
4 changes: 3 additions & 1 deletion topics/steganography/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#Steganography

1. If the file is an image, see [File in an Image](./file-in-image/) or [Hidden Text](./invisible-text/]
##Quick Start

* If the file is an image, see [File in an Image](./file-in-image/) or [Hidden Text](./invisible-text/]

##About

Expand Down

0 comments on commit 6b3c505

Please sign in to comment.