Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • 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 (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. how do you check the quality of your obfuscation of a .net assembly?

how do you check the quality of your obfuscation of a .net assembly?

Scheduled Pinned Locked Moved The Lounge
csharpquestion
24 Posts 15 Posters 0 Views 1 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.
  • Sander RosselS Sander Rossel

    Most code I've seen doesn't need to be obfuscated by programs. The original authors obviously did a lot of work to make it as hard to read as possible... :sigh:

    Visit my blog at Sander's bits - Writing the code you need. Or read my articles at my CodeProject profile.

    Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

    Regards, Sander

    K Offline
    K Offline
    kmoorevs
    wrote on last edited by
    #8

    :laugh: I was thinking the same thing! BTW, a few hours ago I checked in here and found the lounge completely empty! No messages, nothing...no soapbox, no hall of shame weird and wonderful...QA, though was still working though. I had started to wonder if we were just starting over or something. Oh well, good to see all is back to normal. :omg: ...or maybe it was just me? :confused:

    "Go forth into the source" - Neal Morse

    B S Sander RosselS 3 Replies Last reply
    0
    • K kmoorevs

      :laugh: I was thinking the same thing! BTW, a few hours ago I checked in here and found the lounge completely empty! No messages, nothing...no soapbox, no hall of shame weird and wonderful...QA, though was still working though. I had started to wonder if we were just starting over or something. Oh well, good to see all is back to normal. :omg: ...or maybe it was just me? :confused:

      "Go forth into the source" - Neal Morse

      B Offline
      B Offline
      Brisingr Aerowing
      wrote on last edited by
      #9

      The site had a critical system error, causing all sorts of grief for people (I couldn't log in, and the forgot password Captcha didn't work at all. I contacted Chris, and he mentioned the issue).

      What do you get when you cross a joke with a rhetorical question? --- The metaphorical solid rear-end expulsions have impacted the metaphorical motorized bladed rotating air movement mechanism. --- Do questions with multiple question marks annoy you???

      1 Reply Last reply
      0
      • K kmoorevs

        :laugh: I was thinking the same thing! BTW, a few hours ago I checked in here and found the lounge completely empty! No messages, nothing...no soapbox, no hall of shame weird and wonderful...QA, though was still working though. I had started to wonder if we were just starting over or something. Oh well, good to see all is back to normal. :omg: ...or maybe it was just me? :confused:

        "Go forth into the source" - Neal Morse

        S Offline
        S Offline
        Slacker007
        wrote on last edited by
        #10

        kmoorevs wrote:

        BTW, a few hours ago I checked in here and found the lounge completely empty!

        Saturday? A lot of us here don't post during the day on the weekends, I'm guessing.

        1 Reply Last reply
        0
        • S Southmountain

          my assembly is .NET user control in C#. after I obfuscate it, I want to check how good is the obfuscation. So I used Red-gate Reflector to check class, method etc. What is your way to check the quality of obfuscation of a .net assembly?

          diligent hands rule....

          M Offline
          M Offline
          Mark_Wallace
          wrote on last edited by
          #11

          Just use Java. Its objectfuscation makes it impenetrable to even the most valiant code-breakers.

          I wanna be a eunuchs developer! Pass me a bread knife!

          1 Reply Last reply
          0
          • K kmoorevs

            :laugh: I was thinking the same thing! BTW, a few hours ago I checked in here and found the lounge completely empty! No messages, nothing...no soapbox, no hall of shame weird and wonderful...QA, though was still working though. I had started to wonder if we were just starting over or something. Oh well, good to see all is back to normal. :omg: ...or maybe it was just me? :confused:

            "Go forth into the source" - Neal Morse

            Sander RosselS Offline
            Sander RosselS Offline
            Sander Rossel
            wrote on last edited by
            #12

            kmoorevs wrote:

            the lounge completely empty

            I figure, there is no lounge :laugh:

            kmoorevs wrote:

            no soapbox, no hall of shame weird and wonderful...QA

            What do you mean? They're not real...

            kmoorevs wrote:

            good to see all is back to normal

            Alright, this has gone on long enough. There is no lounge, no QA, no CodeProject... They're all figments of your imagination. What you experienced was one of your brighter moments where you almost realized you live in a fantasy world and was about to snap out of it :sigh: We're increasing your therapy.

            Visit my blog at Sander's bits - Writing the code you need. Or read my articles at my CodeProject profile.

            Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

            Regards, Sander

            1 Reply Last reply
            0
            • S Southmountain

              my assembly is .NET user control in C#. after I obfuscate it, I want to check how good is the obfuscation. So I used Red-gate Reflector to check class, method etc. What is your way to check the quality of obfuscation of a .net assembly?

              diligent hands rule....

              F Offline
              F Offline
              Fabio Franco
              wrote on last edited by
              #13

              I once used an obfuscator that prevented both ILDasm and Reflector from even opening the assemblies. It removed the headers. I'm not sure how it got to bind the assemblies without the headers, but I think it would go further on making it harder to unobfuscate the assemblies.

              To alcohol! The cause of, and solution to, all of life's problems - Homer Simpson ---- Our heads are round so our thoughts can change direction - Francis Picabia

              L 1 Reply Last reply
              0
              • S Southmountain

                great info. thanks a million. could you name a few stand-alone deobfuscators?

                diligent hands rule....

                N Offline
                N Offline
                Nelson Kosta Souto
                wrote on last edited by
                #14

                Try also this... http://ilspy.net/[^]

                NKS

                T 1 Reply Last reply
                0
                • N Nelson Kosta Souto

                  Try also this... http://ilspy.net/[^]

                  NKS

                  T Offline
                  T Offline
                  thewazz
                  wrote on last edited by
                  #15

                  i think that's a viewer, not a deobfuscator.

                  N 1 Reply Last reply
                  0
                  • S Southmountain

                    my assembly is .NET user control in C#. after I obfuscate it, I want to check how good is the obfuscation. So I used Red-gate Reflector to check class, method etc. What is your way to check the quality of obfuscation of a .net assembly?

                    diligent hands rule....

                    C Offline
                    C Offline
                    Chris Jacobi
                    wrote on last edited by
                    #16

                    It feels funny to me to obfuscate a user control. What is there to keep secret? Usually people obfuscate important algorithms. Admitted, to break an obfuscation, an attacker will try to start fooling around with user controls and see what modifications that does to the execution of the application. People with need for strong obfuscations normally do not obfuscate byte code languages. These have a tendency to be easy to de-obfuscate. Strong obfuscations are done on machine code programs. I'm doing obfuscations for business. Like the original poster I would love to know the quality of obfuscations. I bet my obfuscations are unbreakable by amateurs. But how can you find out security against sophisticated attackers? The solution is to pay a readteam. However,for my startup, I would not have the slightest idea where to take the money from. Maybe somebody might try it as a challenge or a crackme, just for bragging rights. But then. if somebody posts an opinion, how much would you believe it? Chris Chris Jacobi Founder White Hawk Software www.whitehawksoftware.com

                    S 1 Reply Last reply
                    0
                    • S Southmountain

                      my assembly is .NET user control in C#. after I obfuscate it, I want to check how good is the obfuscation. So I used Red-gate Reflector to check class, method etc. What is your way to check the quality of obfuscation of a .net assembly?

                      diligent hands rule....

                      T Offline
                      T Offline
                      thund3rstruck
                      wrote on last edited by
                      #17

                      I open the binaries in ILSpy and if ILSpy doesn't throw an exception then the obfuscation is not good enough

                      1 Reply Last reply
                      0
                      • F Fabio Franco

                        I once used an obfuscator that prevented both ILDasm and Reflector from even opening the assemblies. It removed the headers. I'm not sure how it got to bind the assemblies without the headers, but I think it would go further on making it harder to unobfuscate the assemblies.

                        To alcohol! The cause of, and solution to, all of life's problems - Homer Simpson ---- Our heads are round so our thoughts can change direction - Francis Picabia

                        L Offline
                        L Offline
                        Lost User
                        wrote on last edited by
                        #18

                        Hopefully it really did that and didn't just slap [SuppressIldasmAttribute] on everything..

                        1 Reply Last reply
                        0
                        • T thewazz

                          i think that's a viewer, not a deobfuscator.

                          N Offline
                          N Offline
                          Nelson Kosta Souto
                          wrote on last edited by
                          #19

                          ILSpy is the open-source .NET assembly browser and decompiler. If you have a c# DLL File or EXE, you can save decompiled assembly as .csproj and Assembly as C# Project.

                          NKS

                          S 1 Reply Last reply
                          0
                          • S Sascha Lefevre

                            From what I've read, de4dot[^] is probably the top dog deobfuscator or at least among them.

                            S Offline
                            S Offline
                            Southmountain
                            wrote on last edited by
                            #20

                            thanks. it is great tool.

                            diligent hands rule....

                            S 1 Reply Last reply
                            0
                            • N Nelson Kosta Souto

                              ILSpy is the open-source .NET assembly browser and decompiler. If you have a c# DLL File or EXE, you can save decompiled assembly as .csproj and Assembly as C# Project.

                              NKS

                              S Offline
                              S Offline
                              Southmountain
                              wrote on last edited by
                              #21

                              I am using it right now besides some others..

                              diligent hands rule....

                              1 Reply Last reply
                              0
                              • C Chris Jacobi

                                It feels funny to me to obfuscate a user control. What is there to keep secret? Usually people obfuscate important algorithms. Admitted, to break an obfuscation, an attacker will try to start fooling around with user controls and see what modifications that does to the execution of the application. People with need for strong obfuscations normally do not obfuscate byte code languages. These have a tendency to be easy to de-obfuscate. Strong obfuscations are done on machine code programs. I'm doing obfuscations for business. Like the original poster I would love to know the quality of obfuscations. I bet my obfuscations are unbreakable by amateurs. But how can you find out security against sophisticated attackers? The solution is to pay a readteam. However,for my startup, I would not have the slightest idea where to take the money from. Maybe somebody might try it as a challenge or a crackme, just for bragging rights. But then. if somebody posts an opinion, how much would you believe it? Chris Chris Jacobi Founder White Hawk Software www.whitehawksoftware.com

                                S Offline
                                S Offline
                                Southmountain
                                wrote on last edited by
                                #22

                                inside my user control I do have some algorithms to protect. I checked your website, but not see product yet...

                                diligent hands rule....

                                1 Reply Last reply
                                0
                                • S Southmountain

                                  thanks. it is great tool.

                                  diligent hands rule....

                                  S Offline
                                  S Offline
                                  Sascha Lefevre
                                  wrote on last edited by
                                  #23

                                  glad I could help!

                                  1 Reply Last reply
                                  0
                                  • S Southmountain

                                    my assembly is .NET user control in C#. after I obfuscate it, I want to check how good is the obfuscation. So I used Red-gate Reflector to check class, method etc. What is your way to check the quality of obfuscation of a .net assembly?

                                    diligent hands rule....

                                    G Offline
                                    G Offline
                                    Ganesh R Rao
                                    wrote on last edited by
                                    #24

                                    See if this tool can de-obfuscate your obfuscation: http://de4dot.com/[^]

                                    1 Reply Last reply
                                    0
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    • Login

                                    • Don't have an account? Register

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