{"id":13843348,"url":"https://github.com/jas502n/Burp_AES_Plugin","last_synced_at":"2025-07-11T18:31:46.370Z","repository":{"id":82140124,"uuid":"272982094","full_name":"jas502n/Burp_AES_Plugin","owner":"jas502n","description":"Burpsuite Plugin For AES Crack","archived":false,"fork":false,"pushed_at":"2020-06-17T17:15:45.000Z","size":1090,"stargazers_count":38,"open_issues_count":0,"forks_count":8,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-08-05T17:37:06.282Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jas502n.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2020-06-17T13:31:40.000Z","updated_at":"2024-07-08T19:03:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"17929d21-376e-424a-b1fb-ab197de1cd5f","html_url":"https://github.com/jas502n/Burp_AES_Plugin","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jas502n%2FBurp_AES_Plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jas502n%2FBurp_AES_Plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jas502n%2FBurp_AES_Plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jas502n%2FBurp_AES_Plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jas502n","download_url":"https://codeload.github.com/jas502n/Burp_AES_Plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225745589,"owners_count":17517674,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T17:02:00.259Z","updated_at":"2024-11-21T14:31:05.836Z","avatar_url":"https://github.com/jas502n.png","language":"Java","funding_links":[],"categories":["Java"],"sub_categories":[],"readme":"# Burpsuite Plugin For AES Crack\n\n## 0x00 mvn install to get jar\n\n`git clone https://github.com/jas502n/Burp_AES_Plugin/`\n\n`cd ~/github/Burp_AES_Plugin/AESDecode`\n\n`vi src/main/java/burp/BurpExtender.java`\n\n`mvn install`\n\n\n```\n[INFO] --- maven-install-plugin:2.4:install (default-install) @ AESCrack ---\n[INFO] Installing /root/github/Burp_AES_Plugin/AESDecode/target/AESCrack-1.0-SNAPSHOT.jar to /root/.m2/repository/com/jas502n/AESCrack/1.0-SNAPSHOT/AESCrack-1.0-SNAPSHOT.jar\n[INFO] Installing /root/github/Burp_AES_Plugin/AESDecode/pom.xml to /root/.m2/repository/com/jas502n/AESCrack/1.0-SNAPSHOT/AESCrack-1.0-SNAPSHOT.pom\n[INFO] Installing /root/github/Burp_AES_Plugin/AESDecode/target/AESCrack-1.0-SNAPSHOT-jar-with-dependencies.jar to /root/.m2/repository/com/jas502n/AESCrack/1.0-SNAPSHOT/AESCrack-1.0-SNAPSHOT-jar-with-dependencies.jar\n[INFO] ------------------------------------------------------------------------\n[INFO] BUILD SUCCESS\n[INFO] ------------------------------------------------------------------------\n[INFO] Total time:  3.627 s\n[INFO] Finished at: 2020-06-18T00:17:09+08:00\n[INFO] ------------------------------------------------------------------------\n```\n\n## 0x01 最近遇到挺多网站前端用的 aes 加密登录,就想弄一个 Burpsuite AES 加密爆破插件\n\n![](./key.png)\n\n## 0x02 查阅资料,造轮子\n\n如何编写自己的Burp Suite插件\nhttps://t0data.gitbooks.io/burpsuite/content/chapter16.html\n\n开发BurpSuite扩展爆破某平台\nhttps://gorgias.me/2017/03/29/%E5%BC%80%E5%8F%91BurpSuite%E6%89%A9%E5%B1%95%E7%88%86%E7%A0%B4%E6%9F%90%E5%B9%B3%E5%8F%B0/\n\nBurpsuite API Javadoc\nhttps://portswigger.net/burp/extender/api/\n\nCoolCat 写的 AesDecode插件,支持菜单页面加密与解密,爆破\nhttps://github.com/TheKingOfDuck/\nhttps://blog.gzsec.org/archives/\n\nc0ny1 的jsEncrypter\nhttps://github.com/c0ny1/jsEncrypter\n\n\n## 0x03 idea 新建 mvn 项目,pom.xml 中添加依赖\n\n```\n    \u003cdependencies\u003e\n        \u003c!-- https://mvnrepository.com/artifact/net.portswigger.burp.extender/burp-extender-api --\u003e\n        \u003cdependency\u003e\n            \u003cgroupId\u003enet.portswigger.burp.extender\u003c/groupId\u003e\n            \u003cartifactId\u003eburp-extender-api\u003c/artifactId\u003e\n            \u003cversion\u003e1.7.22\u003c/version\u003e\n        \u003c/dependency\u003e\n    \u003c/dependencies\u003e\n```\n\n```\n    \u003cbuild\u003e\n        \u003cplugins\u003e\n            \u003cplugin\u003e\n                \u003cgroupId\u003eorg.apache.maven.plugins\u003c/groupId\u003e\n                \u003cartifactId\u003emaven-assembly-plugin\u003c/artifactId\u003e\n                \u003cexecutions\u003e\n                    \u003cexecution\u003e\n                        \u003cphase\u003epackage\u003c/phase\u003e\n                        \u003cgoals\u003e\n                            \u003cgoal\u003esingle\u003c/goal\u003e\n                        \u003c/goals\u003e\n                    \u003c/execution\u003e\n                \u003c/executions\u003e\n                \u003cconfiguration\u003e\n                    \u003cdescriptorRefs\u003e\n                        \u003cdescriptorRef\u003ejar-with-dependencies\u003c/descriptorRef\u003e\n                    \u003c/descriptorRefs\u003e\n                \u003c/configuration\u003e\n            \u003c/plugin\u003e\n        \u003c/plugins\u003e\n    \u003c/build\u003e\n```\n## 0x04 新建包名 burp, java 类 BurpExtender,实现 AES 加密方法\nIBurpExtender  官方必须要implements\n\nIIntruderPayloadProcessor 由于我们要用到Intruder的爆破功能即可,所以需要implements\n\n```\npublic class BurpExtender implements IBurpExtender, IIntruderPayloadProcessor {\n    private static IExtensionHelpers helpers;\n    public final static String extensionName = \"AESCrack\"; // 插件名称\n    public final static String version = \"1.0\";\n    public final static String AES_IV = \"1234567812345678\"; // 设置 AES IV 值\n    public final static String AES_KEY = \"key12345key67890\"; // 设置 AES KEY 值\n```\n\n##### encryptAES (设置  AES iv 值)\n\n```\n    public static String encryptAES(String paramString1, String paramString2)\n            throws InvalidKeyException, NoSuchAlgorithmException, NoSuchPaddingException, UnsupportedEncodingException, InvalidAlgorithmParameterException, IllegalBlockSizeException, BadPaddingException {\n        SecretKeySpec key = new SecretKeySpec(paramString2.getBytes(), \"AES\");\n        IvParameterSpec iv = new IvParameterSpec(\"your-iv-value\".getBytes()); //set iv\n        Cipher cipher = Cipher.getInstance(\"AES/CBC/PKCS5Padding\");\n        cipher.init(1, key, iv);\n        return helpers.base64Encode(cipher.doFinal(paramString1.getBytes()));\n    }\n\n```\n\nprocessPayload 方法 (设置 AES KEY)\n\n```\n    public byte[] processPayload(byte[] currentPayload, byte[] originalPayload, byte[] baseValue) {\n        String dataParameter = helpers.bytesToString(currentPayload);\n        String AesEncodeStr = null;\n        try {\n            AesEncodeStr = encryptAES(dataParameter, \"your-aes-key\"); //set aes key\n        } catch (InvalidKeyException e) {\n            e.printStackTrace();\n        } catch (NoSuchAlgorithmException e) {\n            e.printStackTrace();\n        } catch (NoSuchPaddingException e) {\n            e.printStackTrace();\n        } catch (UnsupportedEncodingException e) {\n            e.printStackTrace();\n        } catch (InvalidAlgorithmParameterException e) {\n            e.printStackTrace();\n        } catch (IllegalBlockSizeException e) {\n            e.printStackTrace();\n        } catch (BadPaddingException e) {\n            e.printStackTrace();\n        }\n        return helpers.stringToBytes(AesEncodeStr);\n    }\n```\n\n## 0x05 idea mvn 编译\n\nIntellij-idea 如何编译maven工程\nhttps://blog.csdn.net/u013044029/article/details/71681891\n\n编译运行成功,在 target 目录,得到 aes.jar 文件\n\n一个没有依赖(文件小) `AESCrack-1.0-SNAPSHOT.jar`\n一个有依赖(文件大) `AESCrack-1.0-SNAPSHOT-jar-with-dependencies.jar`\n\nBurpsuite 加载插件时,使用没有依赖的就行了 `AESCrack-1.0-SNAPSHOT.jar`\n\n![](./target.png)\n\n\n## 0x06 AES 爆破效果\n\n![](success.png)\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjas502n%2FBurp_AES_Plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjas502n%2FBurp_AES_Plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjas502n%2FBurp_AES_Plugin/lists"}