Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Zephyr)
  • No Skin
Collapse
RipperStore Logo
  1. Home
  2. Off-Topic
  3. Modding
  4. Malware scanner for unitypackage files

Malware scanner for unitypackage files

Scheduled Pinned Locked Moved Modding
developercodingvrchatscannerunitypackage
76 Posts 15 Posters 7.1k Views 34 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M ManMachine

    the latest poiyomi pro I got showed high risk, I don't know if I can use it:

    ======================================================================
    vrcstorage-scanner — Batch Scan Report
    Generated: Sat, 2 May 2026 16:23:51 +0000
    Files scanned: 1

    SUMMARY

    Score Risk Level Sanitize File


    167 CRITICAL no Poi.Pro.10.0.9.unitypackage

    ======================================================================
    FILE 1/1: D:\VR\Poi.Pro.10.0.9.unitypackage

    SHA-256 : 3e8b7520ae56fe3bff59ba165ac916809641cec49a9db1086777c4f44fc37678
    Size : 100.9 MB
    Score : 167 | Risk: CRITICAL | Duration: 1.11s | Action: AutoReject
    Assets : total=1519 scripts=227 dlls=0 textures=284 audio=0 prefabs=9

    FINDINGS (15):

    [HIGH + 40pt] File write/delete operations detected in C# script (CS_FILE_WRITE)
    File: Assets/_PoiyomiShaders/Scripts/poi-tools/Editor/PoiTexturePacker/PoiTexturePacker.cs
    Lines: 436, 457, 465

    [HIGH + 40pt] File write/delete operations detected in C# script (CS_FILE_WRITE)
    File: Assets/_PoiyomiShaders/Scripts/Editor/ModularShaderSystem/LocalPreferences/ModuleTogglePreferences.cs
    Lines: 233

    [HIGH + 40pt] File write/delete operations detected in C# script (CS_FILE_WRITE)
    File: Assets/_PoiyomiShaders/Scripts/poi-tools/Editor/ModularShaderStuff/ModularShadersGeneratorWindow.cs
    Lines: 489, 529

    [MEDIUM + 8pt] Texture file has high entropy 7.58 (possible embedded payload) (TEXTURE_HIGH_ENTROPY)
    File: Assets/_PoiyomiShaders/Textures/Noise/T_Noise_No (9).TGA
    Context: entropy=7.5828

    [MEDIUM + 8pt] Texture file has high entropy 7.96 (possible embedded payload) (TEXTURE_HIGH_ENTROPY)
    File: Assets/_PoiyomiShaders/Prefabs/Glass.png
    Context: entropy=7.9608

    [MEDIUM + 8pt] Texture file has high entropy 7.93 (possible embedded payload) (TEXTURE_HIGH_ENTROPY)
    File: Assets/_PoiyomiShaders/Textures/Pixels/T_Pixel_IPS.png
    Context: entropy=7.9337

    [MEDIUM + 4pt] Meta file contains external object references (assets not included in package) (META_EXTERNAL_REF)
    File: Assets/_PoiyomiShaders/TPS/Assets/Carrot/carrot.fbx

    [MEDIUM + 4pt] Meta file contains external object references (assets not included in package) (META_EXTERNAL_REF)
    File: Assets/_PoiyomiShaders/TPS/Assets/orifice.fbx

    [MEDIUM + 4pt] Meta file contains external object references (assets not included in package) (META_EXTERNAL_REF)
    File: Assets/_PoiyomiShaders/TPS/Assets/Jar/Jar.fbx

    [MEDIUM + 4pt] Meta file contains external object references (assets not included in package) (META_EXTERNAL_REF)
    File: Assets/_PoiyomiShaders/TPS/Assets/PenFBX.fbx

    [LOW + 2pt] File is a valid image but in a different format than its extension suggests (MAGIC_MISMATCH_IMAGE)
    File: Assets/_PoiyomiShaders/Prefabs/Glass.png
    Context: declared_ext=png

    [LOW + 2pt] File is a valid image but in a different format than its extension suggests (MAGIC_MISMATCH_IMAGE)
    File: Assets/_PoiyomiShaders/Textures/Pixels/T_Pixel_IPS.png
    Context: declared_ext=png

    [LOW + 1pt] Long Base64-encoded field in YAML prefab/asset (may be inline texture or payload) (PREFAB_INLINE_B64)
    File: Assets/_PoiyomiShaders/Textures/Gifs/T_FireWorks_GIF.asset
    Context: length=678032

    [LOW + 1pt] Long Base64-encoded field in YAML prefab/asset (may be inline texture or payload) (PREFAB_INLINE_B64)
    File: Assets/_PoiyomiShaders/Textures/Gifs/T_Matrix_GIF.asset
    Context: length=678032

    [LOW + 1pt] Long Base64-encoded field in YAML prefab/asset (may be inline texture or payload) (PREFAB_INLINE_B64)
    File: Assets/_PoiyomiShaders/Textures/Gifs/T_2ColorLines_GIF.asset
    Context: length=87808

    VERDICT: DO NOT INSTALL — potentially malicious, may compromise your system.

    ======================================================================
    OVERALL RESULTS

    Clean : 0
    Low : 0
    Medium : 0
    High : 0
    Critical : 1
    Sanitized: 0

    vrcstorage-scanner by SummerTYT

    PanConChanchoP
    PanConChanchoP
    PanConChancho
    wrote on last edited by
    #45

    @ManMachine As @anonberry said, it's more likely to be a false positive, in the latest poiyomi version (v10) they implement more stuff that isn't the version 9 so I have to update

    1 Reply Last reply
    0
    • M
      M
      ManMachine
      wrote on last edited by
      #46

      perfect, ty. I can use them without worry, then

      1 Reply Last reply
      0
      • NewbKidN
        NewbKidN
        NewbKid
        wrote on last edited by
        #47

        This is very interesting, tried it on a few things myself, there were a couple that flagged, one being "high" the other being critical. How can you tell between a false positive and a real critical? And say there was something that flagged a false positive and you went ahead and cleaned it anyways, would that remove any vital things from the package and possibly break it? Just curious.

        PanConChanchoP 1 Reply Last reply
        0
        • NewbKidN NewbKid

          This is very interesting, tried it on a few things myself, there were a couple that flagged, one being "high" the other being critical. How can you tell between a false positive and a real critical? And say there was something that flagged a false positive and you went ahead and cleaned it anyways, would that remove any vital things from the package and possibly break it? Just curious.

          PanConChanchoP
          PanConChanchoP
          PanConChancho
          wrote on last edited by PanConChancho
          #48

          @NewbKid Good question tho.

          For the scanner, I try to avoid generic statements like "it has a .png extension, therefore it's a PNG." The scanner checks and verifies that things like images are what they claim to be. It also analyzes lines of code looking for potential unwanted behavior, such as file writing or Assembly code.

          We're still working on the sanitization feature; it's difficult when you don't have a malicious .unitypackage file, haha. But for some files, the sanitizer deletes them. For scripts, it comments them out. That way, if there's any unusual behavior, instead of deleting everything and breaking the entire project, it simply crosses out that line of code, like crossing out a sentence in a notebook.

          The false positives are mostly my interpretation and logic. A script has file writing capabilities, BUT it exists for some reason, whether it's due to an algorithm or menus, so it's added to a whitelist. The best example I can give you is Poiyomi.

          Poiyomi uses many scripts that write to files/directories. This is where I check if that script exists in the official project, extract a unique hash (the file signature), and add it to a whitelist. This way, when an avatar's project is scanned and a Poiyomi file is found within it, I verify that the same file exists in the official project. If it does, it's skipped.

          BUT, this doesn't mean the scanner says, "Ah, this file exists, I'll skip it." It verifies that the content is the same as in the official project using the file's hash.

          Currently, many flags were created by an AI that thoroughly investigated all possible scenarios, such as HTTP injection, file writing, out-of-the-box code, disguised files, etc. However, over time, the criteria for what is considered critical or high, and their corresponding scores, are being updated.

          1 Reply Last reply
          0
          • PanConChanchoP
            PanConChanchoP
            PanConChancho
            wrote on last edited by
            #49

            New version v0.8.0

            I've fixed the false positives that were generating audio files; for example, a project that had 126 warnings now only has 1. We're still working on reducing false positives so that eventually only real warnings will appear lol

            https://github.com/vicentefelipechile/vrchat-scanner/releases


            Web Version

            I've also worked on a web version of this scanner for those who don't want to download a file. The web version includes a scan history, making it easier to share results. It also supports Discord embeds.

            https://scanner.vrcstorage.lat/

            Again, ty!! @anonberry for all ideas :3

            1 Reply Last reply
            2
            • anonberryA
              anonberryA
              anonberry
              wrote on last edited by
              #50

              0.8.0 already?? i've missed a lot

              I often use translators, which can make my messages look ai-generated.

              1 Reply Last reply
              😁
              2
              • PanConChanchoP
                PanConChanchoP
                PanConChancho
                wrote on last edited by
                #51

                Working on the version 0.9.0

                Currently, the scan only has the bare minimum to function, but not everyone knows how to use a terminal, so I'm preparing a new version that includes an easy-to-use interface and runs everything locally.

                This is my first time making a desktop application (without using a frontend), so you can expect to find some bugs.


                Preview

                79f6403b-bd3b-47d0-b77b-f957dbc39c19-image.jpeg

                06c0a5f2-b1a4-42ac-97ed-eb96a10320d4-image.jpeg
                07458ffc-cf2e-4875-9fe3-5c7536bbe95b-image.jpeg

                anonberryA 1 Reply Last reply
                5
                • PanConChanchoP PanConChancho

                  Working on the version 0.9.0

                  Currently, the scan only has the bare minimum to function, but not everyone knows how to use a terminal, so I'm preparing a new version that includes an easy-to-use interface and runs everything locally.

                  This is my first time making a desktop application (without using a frontend), so you can expect to find some bugs.


                  Preview

                  79f6403b-bd3b-47d0-b77b-f957dbc39c19-image.jpeg

                  06c0a5f2-b1a4-42ac-97ed-eb96a10320d4-image.jpeg
                  07458ffc-cf2e-4875-9fe3-5c7536bbe95b-image.jpeg

                  anonberryA
                  anonberryA
                  anonberry
                  wrote on last edited by
                  #52

                  @SummerTYT beautiful

                  I often use translators, which can make my messages look ai-generated.

                  PanConChanchoP 1 Reply Last reply
                  2
                  • anonberryA anonberry

                    @SummerTYT beautiful

                    PanConChanchoP
                    PanConChanchoP
                    PanConChancho
                    wrote on last edited by
                    #53

                    @anonberry tyyy!!!

                    1 Reply Last reply
                    2
                    • PanConChanchoP
                      PanConChanchoP
                      PanConChancho
                      wrote on last edited by
                      #54

                      Version 0.9.0

                      I finished to build a desktop version for the scanner, now you can easily scan unitypackages, see their score, file tree and even export the content inside as ZIP or folder.

                      You can use it by downloading the installer from the releases
                      https://github.com/vicentefelipechile/vrchat-scanner/releases


                      Preview

                      3a6eac7d-0a32-4193-bb42-106503508afb-image.jpeg

                      ef53e2e0-567c-49f2-901a-ecf74b602418-image.jpeg

                      f114bb17-6daa-41dd-b80d-71268ff29dd2-image.jpeg

                      a4131587-ea69-40f0-b2ac-cfb91d65d004-image.jpeg

                      3bdfddb6-0ef0-4548-86a8-55cac7dcc8cc-image.jpeg

                      2716c37d-7e34-4424-800a-724ef500e88e-image.jpeg

                      57e54d2b-dd49-444b-a3bf-ab5138177cf4-image.jpeg

                      1 Reply Last reply
                      👍
                      6
                      • PanConChanchoP
                        PanConChanchoP
                        PanConChancho
                        wrote on last edited by
                        #55

                        It comes with their own icon btw

                        128x128@2x.png

                        Rat-zR 1 Reply Last reply
                        3
                        • PanConChanchoP PanConChancho

                          It comes with their own icon btw

                          128x128@2x.png

                          Rat-zR
                          Rat-zR
                          Rat-z
                          wrote on last edited by
                          #56

                          @SummerTYT This is amazing seriously, thanks for helping keep us safe!

                          Please PLEASE, if you have any Imeris assets or Kuronatsu @ me!

                          PanConChanchoP 1 Reply Last reply
                          0
                          • Rat-zR Rat-z

                            @SummerTYT This is amazing seriously, thanks for helping keep us safe!

                            PanConChanchoP
                            PanConChanchoP
                            PanConChancho
                            wrote on last edited by
                            #57

                            @Rat-z tysm!!

                            1 Reply Last reply
                            👍
                            1
                            • anonberryA
                              anonberryA
                              anonberry
                              wrote on last edited by
                              #58

                              Bumping this thread to give this guy some love

                              I often use translators, which can make my messages look ai-generated.

                              1 Reply Last reply
                              1
                              • N
                                N
                                Nicenick
                                wrote on last edited by
                                #59

                                Bump for love

                                1 Reply Last reply
                                0
                                • MsiprismM
                                  MsiprismM
                                  Msiprism
                                  wrote on last edited by
                                  #60

                                  Love the work

                                  1 Reply Last reply
                                  0
                                  • Remu335R
                                    Remu335R
                                    Remu335
                                    wrote on last edited by
                                    #61

                                    bump because good job

                                    1 Reply Last reply
                                    1
                                    • ReymR
                                      ReymR
                                      Reym
                                      wrote on last edited by
                                      #62

                                      this tools is ABSOLUTE CINEMA
                                      great job!!

                                      I'm bad at understanding english word

                                      I fix .vrca/.vrcw stuff for free and for fun! Depending on file, every outcome and vary might be different than the original avatar has due to the toggles and much more, send me a pm if you need an avi that need to fix or cracking a password locked avatar or send me .vrca file or through my pms and i will extract/fix them for you!

                                      request is semi-open, only on unencrypted __data file aka .vrca or .vrcw

                                      1 Reply Last reply
                                      0
                                      • G
                                        G
                                        GoatonicReal
                                        wrote on last edited by
                                        #63

                                        heyyyy, ive using this for awhile but im rn checking out stuff ive got from someone on gumroad called irongut, ive used his models before but they are reading critical- i hope its not a mistake,

                                        1 Reply Last reply
                                        0
                                        • G
                                          G
                                          GoatonicReal
                                          wrote on last edited by
                                          #64

                                          0fe82248-38b4-4468-a0df-1f4726d14d71-image.jpeg

                                          PanConChanchoP 1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular