<?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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.metasploit</groupId> <artifactId>Metasploit-AndroidLibrary</artifactId> <version>1-SNAPSHOT</version> <packaging>apk</packaging> <name>Android Meterpreter</name> <properties> <deploy.path>../../metasploit-framework</deploy.path> </properties> <dependencies> <dependency> <groupId>com.google.android</groupId> <artifactId>android</artifactId> <version>1.6_r2</version> <scope>provided</scope> </dependency> <dependency> <groupId>com.metasploit</groupId> <artifactId>Metasploit-JavaPayload</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.metasploit</groupId> <artifactId>Metasploit-Java-Meterpreter</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.metasploit</groupId> <artifactId>Metasploit-Java-Meterpreter-stdapi</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.metasploit</groupId> <artifactId>Metasploit-AndroidPayload</artifactId> <version>${project.version}</version> <scope>provided</scope> </dependency> </dependencies> <build> <finalName>${project.artifactId}</finalName> <sourceDirectory>src</sourceDirectory> <pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <version>3.7.0</version> <extensions>true</extensions> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>com.jayway.maven.plugins.android.generation2</groupId> <artifactId>android-maven-plugin</artifactId> <configuration> <sdk> <!-- platform or api level (api level 10 = platform 2.3)--> <platform>10</platform> </sdk> </configuration> </plugin> </plugins> </build> <profiles> <profile> <!-- deploy built files to Metasploit data directory --> <id>deploy</id> <build> <plugins> <plugin> <artifactId>maven-antrun-plugin</artifactId> <version>1.7</version> <executions> <execution> <phase>package</phase> <goals> <goal>run</goal> </goals> <configuration> <target> <condition property="dx.filename" value="dx.bat"> <os family="windows" /> </condition> <property name="dx.filename" value="dx" /> <echo>Building shell</echo> <delete dir="${project.basedir}/target/dx" /> <mkdir dir="${project.basedir}/target/dx/shell" /> <copy todir="${project.basedir}/target/dx/shell"> <fileset dir="${project.basedir}/target/classes"> <include name="androidpayload/stage/Shell.class" /> </fileset> <zipfileset src="${com.metasploit:Metasploit-JavaPayload:jar}" includes="javapayload/stage/StreamForwarder.class" /> <zipfileset src="${com.metasploit:Metasploit-JavaPayload:jar}" includes="javapayload/stage/Stage.class" /> </copy> <exec executable="${android.sdk.path}/platforms/android-3/tools/${dx.filename}" failonerror="true"> <arg value="--verbose" /> <arg value="--dex" /> <arg value="--output=${project.basedir}/../../${deploy.path}/data/android/shell.jar" /> <arg value="${project.basedir}/target/dx/shell" /> </exec> <echo>Building meterpreter stage</echo> <mkdir dir="${project.basedir}/target/dx/metstage" /> <copy todir="${project.basedir}/target/dx/metstage"> <fileset dir="${project.basedir}/target/classes"> <include name="androidpayload/stage/Meterpreter.class" /> </fileset> <zipfileset src="${com.metasploit:Metasploit-JavaPayload:jar}" includes="javapayload/stage/Stage.class" /> </copy> <exec executable="${android.sdk.path}/platforms/android-3/tools/${dx.filename}" failonerror="true"> <arg value="--verbose" /> <arg value="--dex" /> <arg value="--output=${project.basedir}/../../${deploy.path}/data/android/metstage.jar" /> <arg value="${project.basedir}/target/dx/metstage" /> </exec> <echo>Building meterpreter</echo> <mkdir dir="${project.basedir}/target/dx/meterpreter" /> <copy todir="${project.basedir}/target/dx/meterpreter"> <fileset dir="${project.basedir}/target/classes"> <include name="com/metasploit/meterpreter/**/*.class" /> </fileset> </copy> <exec executable="${android.sdk.path}/platforms/android-3/tools/${dx.filename}" failonerror="true"> <arg value="--verbose" /> <arg value="--dex" /> <arg value="--output=${project.basedir}/../../${deploy.path}/data/android/meterpreter.jar" /> <arg value="${project.basedir}/target/dx/meterpreter" /> <arg value="${com.metasploit:Metasploit-Java-Meterpreter:jar}" /> <arg value="${com.metasploit:Metasploit-Java-Meterpreter-stdapi:jar}" /> <arg value="${com.metasploit:Metasploit-JavaPayload:jar}" /> </exec> </target> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> </profiles> </project>