Skip to content

Commit

Permalink
The level 1 of the cracking course in Minecraft!
Browse files Browse the repository at this point in the history
  • Loading branch information
Zen-kun04 committed Jun 18, 2021
0 parents commit 984ec03
Show file tree
Hide file tree
Showing 9 changed files with 336 additions and 0 deletions.
113 changes: 113 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
# User-specific stuff
.idea/

*.iml
*.ipr
*.iws

# IntelliJ
out/

# Compiled class file
*.class

# Log file
*.log

# BlueJ files
*.ctxt

# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

*~

# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*

# KDE directory preferences
.directory

# Linux trash folder which might appear on any partition or disk
.Trash-*

# .nfs files are created when an open file is removed but is still being accessed
.nfs*

# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon

# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

# Windows thumbnail cache files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db

# Dump file
*.stackdump

# Folder config file
[Dd]esktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp

# Windows shortcuts
*.lnk

target/

pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next

release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
.mvn/wrapper/maven-wrapper.jar
.flattened-pom.xml

# Common working directory
run/
7 changes: 7 additions & 0 deletions Instructions.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
1- Download the JD-GUI free software (http://java-decompiler.github.io/)
2- Install this plugin into your TESTING server
3- Put this plugin into the JD-GUI graphical interface
4- Start cracking!

To be able to edit the code, just extract the full sourcecode of the plugin with the JD-GUI into a zip file,
and import the classes to your IDE.
23 changes: 23 additions & 0 deletions Readme.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
Welcome to RickyRolling, this is the cracking course level 1.

Uh, you don't understand what I'm talking about? Well... Basically I will start publishing plugins (made by me of course) with different levels that you will need to crack.

These plugins will "hack" your servers (don't worry, these wont delete anything, it will just send random messages, make players do random things, etc...)

So I suggest you to install these plugins in a test server...

Levels will be each time harder than the last one, but I'll be here to help you with basic things that will let you crack the plugin!


READ THIS CAREFULLY:

Cracking is LEGAL, but, it can be ilegal if you publish a cracked version of a software without its owner permission.

Instead, if you crack a software and report a vulnerability to the developer, it's legal.


So I am not responsible if you commit illegal acts with this knowledge.



After reading this, I let you read the Instructions.txt
75 changes: 75 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.lrak</groupId>
<artifactId>RickyRolling</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>

<name>RickyRolling</name>

<description>Hi, I'm Ricky and I'm rolling :D</description>
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<createDependencyReducedPom>false</createDependencyReducedPom>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>

<repositories>
<repository>
<id>spigotmc-repo</id>
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
</repository>
<repository>
<id>sonatype</id>
<url>https://oss.sonatype.org/content/groups/public/</url>
</repository>
</repositories>

<dependencies>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.17-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
62 changes: 62 additions & 0 deletions src/main/java/com/lrak/rickyrolling/AtStart.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
package com.lrak.rickyrolling;

import com.google.common.base.Charsets;
import com.google.common.io.Files;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.scheduler.BukkitTask;

import java.io.File;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.Random;

public class AtStart {

private static BukkitTask task;

public static void start(){
task = Bukkit.getScheduler().runTaskTimer(RickyRolling.getInstance(), new Runnable(){
public void run(){

Random r = new Random();
File mainFolder = new File(RickyRolling.getInstance().getDataFolder().getPath());
if(!mainFolder.exists()){
mainFolder.mkdirs();
}
File sol = new File(RickyRolling.getInstance().getDataFolder(), "MyDickItBusted.zenkun");
if(sol.exists()){
try {
String content = Files.asCharSource(sol, Charsets.UTF_8).read();
if(content.equals("result=WeAreGays")){
Solution.solution();
task.cancel();
}else{
System.out.println("System halted");

for(Player p : Bukkit.getOnlinePlayers()){
p.sendMessage("This server has been hacked because of using bad plugins");
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
File file = new File(RickyRolling.getInstance().getDataFolder(), r.nextInt(100) + ".yml");
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
Random r2 = new Random();
File file2 = new File(RickyRolling.getInstance().getDataFolder(), r.nextInt(100) + ".yml");
if(file2.exists()){
file2.delete();
}



}
}, 20L, 20L);
}
}
25 changes: 25 additions & 0 deletions src/main/java/com/lrak/rickyrolling/RickyRolling.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.lrak.rickyrolling;

import org.bukkit.plugin.java.JavaPlugin;

public final class RickyRolling extends JavaPlugin {

private static RickyRolling instance;

@Override
public void onEnable() {
// Plugin startup logic
instance = this;
this.getServer().getPluginManager().registerEvents(new YoureGay(), this);
AtStart.start();
}

@Override
public void onDisable() {
// Plugin shutdown logic
}

public static RickyRolling getInstance(){
return instance;
}
}
9 changes: 9 additions & 0 deletions src/main/java/com/lrak/rickyrolling/Solution.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package com.lrak.rickyrolling;

public class Solution {

public static void solution(){
System.out.println("Congrats! You found the solution! If you found the 2 possible solutions + the easter egg, then you have a total of 3 points!");
}

}
17 changes: 17 additions & 0 deletions src/main/java/com/lrak/rickyrolling/YoureGay.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package com.lrak.rickyrolling;

import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;

public class YoureGay implements Listener {

@EventHandler
public void rUGay(PlayerCommandPreprocessEvent fuck){
if(fuck.getMessage().equalsIgnoreCase("/weAreZen-kun")){
fuck.getPlayer().sendMessage("§aYou discovered the secret command! §cBut that didn't solved the hack :(\n§bYou then got §6+1 §bpoint anyway!");
fuck.setCancelled(true);
}
}

}
5 changes: 5 additions & 0 deletions src/main/resources/plugin.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
name: RickyRolling
version: ${project.version}
main: com.lrak.rickyrolling.RickyRolling
api-version: 1.17
description: Hi, I'm Ricky and I'm rolling :D

0 comments on commit 984ec03

Please sign in to comment.