HOME
  Security
   Software
    Hardware
  
FPGA
  CPU
   Android
    Raspberry Pi
  
nLite
  Xcode
   etc.
    ALL
  
LINK
BACK
 

2019/06/16

Visual Studioの C#で開発した .Netアプリの難読化をする方法 Visual Studioの C#で開発した .Netアプリの難読化をする方法

(C#で開発した .Netアプリの難読化は必須事項です、素の状態では簡単に内部を解析されます)

Tags: [Windows], [無人インストール]




● Microsoft Visual Studioの C#で開発した .Netアプリを逆コンパイルする方法

 C#で開発した .Netアプリを逆コンパイル(デコンパイル)して中身の実装を覗く方法。
 下記のツールを使えば C#の .Netで作成したアプリケーションを逆コンパイルして比較的簡単にソースコードの状態に戻せます。

 下記にまとめました。

2019/06/16
Visual Studioの C#で開発した .Netアプリを逆コンパイルして、中身の実装を覗き見る方法
Visual Studioの C#で開発した .Netアプリを逆コンパイルして、中身の実装を覗き見る方法

  C#で開発した .Netアプリは比較的簡単に元のソースコードに戻せます


● Microsoft Visual Studioの C#で開発した .Netアプリの難読化をする方法

 C#で開発した .Netアプリの難読化は必須事項です!!
 素の状態は簡単に内部を解析されます!!

 ・ Phoenix Protector
Phoenix Protector
 Current Version: 1.8.0.1

 ・ ConfuserEx
ConfuserEx
yck1509/ConfuserEx Archived
Confuser
 ConfuserEx is an free, open-source protector for .NET applications. It is the successor of Confuser project.
 ConfuserEx supports .NET Framework from 2.0 - 4.5 and Mono
 ConfuserEx v1.0.0 Jul 1, 2016

 ・ DotNet Patcher v4
DotNet Patcher
 Obfuscator/Packer DotNet
 DotNetPatcher.zip 2019-07-10

https://bitbucket.org/3DotDev/dotnet-patcher/downloads/DotNetPatcher.zip
VirusTotal
 No engines detected this URL

DotNetPatcher.exe
 20 engines detected this file

 ・ NanDoKu
NanDoKu
 VB.NET C#.NET 用の難読化ソフトです。
 バージョン 4.1.1
 作成日 2015/12/04

 ・ Obfuscar
Obfuscar
Obfuscar Copy
 Obfuscar, The Open Source Obfuscation Tool for .NET Assemblies
 The Simplest .NET obfuscation tool.

 ・ SharpObfuscator
SharpObfuscator
 It is a Software Protection tool, designed to help .NET developers efficiently protect their software.  It will obfuscate and protect your .NET code, optimize your .NET assembly for better deployment, minimize distribution size, increase performance & add powerful post-deployment debugging capabilities.

●以下は有償の .Net難読化ツール

 ・ Eazfuscator.NET(有償)
Eazfuscator.NET
 Eazfuscator.NET is the obfuscator for .NET platform.

 ・ babelfor.NET(有償)
babelfor.NET
 babelfor.NET: Code Obfuscation and Licensing for .NET Framework

 ・ PreEmptive Dotfuscator for .NET/Xamarin/UWP/Unity3D 難読化ツール(有償)
Dotfuscator

 Visual Studioの Professional版には機能限定版の Dotfuscator CE版が同梱されています。
 Visual Studio 2017からは Community Edition(CE)にも Dotfuscator CE版が同梱されていますが、CE版は機能がショボイです。
Dotfuscator Community をインストールする
Dotfuscator Community - Download Update

 Dotfuscator Community Edition (CE) = Microsoft Visual Studio に無償で同梱される機能限定版。
 Dotfuscator Professional Edition (PE) = 商用アプリケーションおよび企業向けアプリケーションの開発に対応するフル機能版。


● C#で開発した .Netアプリを難読化する場合の注意事項

 Phoenix Protectorや ConfuserExで難読化したアプリはセキュリティソフトに「ウイルス」として誤認される事が有ります。
 理由は、本物のウイルスもこれらの難読化ツールを使用して難読化しているからです。
 難読化を復号化する処理の部分や、難読化した際の特徴点がマッチするから「派生ウイルス」として誤認されてしまうのでしょう。

 私も以前に請負で開発した .Netアプリが納品先の会社のセキュリティソフトに「ウイルス」として誤検知されてしまうと言う事がありました。
 導入の台数が非常に多かったので「ホワイトリストに登録する」と言う対応策は却下されてしまいました。(ホワイトリストに登録する手間が掛かるので)
 なので、客先の会社で使用しているセキュリティソフトの会社に問い合わせて、私の開発したアプリをウイルスの検出パターンファイルから除外して貰いました。
 問い合わせから 2週間程度でウイルスのパターンファイルに反映して貰い、その旨を客先に伝えて一件落着となりました。



● Microsoftの Windows Defenderで誤検知された場合の対策方法

 Microsoftのセキュリティソフト Windows Defenderにマルウェア誤検知された場合は下記の Microsoftの検体提出ページで検体を提出します。

Submit a file for malware analysis

 Windows Defender Security Intelligence でマルウェアのサンプルを提出する手順
2017/9/5 マルウェア検体の提出方法の変更のお知らせ

 ・Do you believe this file contains malware ?
 マルウェアは Yes
 誤検知は No

 Final determination 最終判定
 Not malware マルウェアじゃない

Security intelligence updates for Windows Defender Antivirus and other Microsoft antimalware
cd %ProgramFiles%\Windows Defender
MpCmdRun.exe -removedefinitions -dynamicsignatures
MpCmdRun.exe -SignatureUpdate


● Packer 難読化とは異なり、実行ファイルのファイルサイズを小さくする

 Packerと言う実行ファイルのファイルサイズを小さくするツールも有ります。
 これは実行ファイルを圧縮して、実行時に伸張(解凍)します。
 通常の状態では圧縮されているので、静的に解析する逆コンパイラでは逆コンパイルができません。なので Packerも一種の難読化とも言えます。
 (ただし、Packerを難読化に分類するのには異論も有ります)

 ・UPX
UPX the Ultimate Packer for eXecutables
 UPX is a free, portable, extendable, high-performance executable packer for several executable formats.

・DotNetCompressor
TotalTechGeek/DotNetCompressor
 28 Mar 2016 NetCompressor.zip
NetCompressor.exe
 29 engines detected this file

・MPRESS
MPRESS
 Version: 2.19 2012/01/02 18:04:00

・Exepack.NET
 Exepack.NET is executable file compressor for .NET Framework. It allows to package your .NET application consisting of an executable file and several class libraries into single compact easy-to-deploy executable, protected against disassembling. Exepack.NET is developed in C#.

・RPX - Rugland Packer for (.Net) eXecutables
 8年前
 
RPX compresses .NET executables and can bundle multiple assemblys into a single executable. It requires no additional external assembly or library to decompress so you get really good compression with only about a 7KB overhead. It's developed in C

・.netshrink (有償)
.netshrink exe packer & virtual dll binder



Tags: [Windows], [無人インストール]

●関連するコンテンツ(この記事を読んだ人は、次の記事も読んでいます)

【2023年対応】 Microsoft Visual C++ ランタイムライブラリ 再頒布可能パッケージのまとめ 2005~2022まで
【2023年対応】 Microsoft Visual C++ ランタイムライブラリ 再頒布可能パッケージのまとめ 2005~2022まで

  Microsoft Visual C++ 2005、2008、2010、2012、2013、2015、2017、2019、2022の各バージョンの最新版 MSVC Runtime librariesのまとめ

Visual Studioの C#で開発した .Netアプリを逆コンパイルして、中身の実装を覗き見る方法
Visual Studioの C#で開発した .Netアプリを逆コンパイルして、中身の実装を覗き見る方法

  C#で開発した .Netアプリは比較的簡単に元のソースコードに戻せます

Visual Studio 2019 Professional v16.4を無人インストールする方法、完全自動でインストール
Visual Studio 2019 Professional v16.4を無人インストールする方法、完全自動でインストール

  VS2019 v16.4を完全オフラインインストール&コンポーネント選択の事前設定で自動インストールする

Visual Studio 2017 Professional 15.9を無人インストールする方法、完全自動でインストール
Visual Studio 2017 Professional 15.9を無人インストールする方法、完全自動でインストール

  VS2017を完全オフラインインストール&コンポーネント選択の事前設定で自動インストールする

Visual Studio 2015 Professionalを無人インストールする方法、完全自動でインストール
Visual Studio 2015 Professionalを無人インストールする方法、完全自動でインストール

  VS2015を Update 3適用済みとコンポーネント選択の事前設定でインストール時の手間を省く

Visual Studio 2013 Professionalを無人インストールする方法、完全自動でインストール
Visual Studio 2013 Professionalを無人インストールする方法、完全自動でインストール

  VS2013を Update 5適用済みとコンポーネント選択の事前設定でインストール時の手間を省く

Visual Studio 2005 Professionalに Service Pack 1を統合して無人インストールする方法
Visual Studio 2005 Professionalに Service Pack 1を統合して無人インストールする方法

  VS2005に SP1を統合 & 完全自動でインストール、SP1の適用とコンポーネントの事前設定でインストールの手間を省く

Visual Studio 98を Windows 10 1903にインストールする方法
Visual Studio 98を Windows 10 1903にインストールする方法

  VS98 Visual Studio 98を Windows 10 19H1にインストールする方法

Visual Studio Communityのまとめ Professional と同等機能が無償
Visual Studio Communityのまとめ Professional と同等機能が無償

  Visual Studio Communityの 2013 Update 5、2015 Update 3、2017 version 15.6のまとめ

C# .NETで ZIPファイル解凍ツール UnZipをソースリスト 1行で自作する方法、Windows .NET専用
C# .NETで ZIPファイル解凍ツール UnZipをソースリスト 1行で自作する方法、Windows .NET専用

  Visual Studio 2013の C# .NET 4.5で ZipFile.ExtractToDirectoryを使い、UnZip解凍ツールを作成

Visual Studio 2013に Windows 10 SDK + UwpDesktopで UWPの機能を素の Windowsアプリから使用
Visual Studio 2013に Windows 10 SDK + UwpDesktopで UWPの機能を素の Windowsアプリから使用

  VS2013に Win 10 SDKをインストールして Uwp Desktopで UWPの機能を従来の Windowsアプリで動かす

Visual Studio 2013の C# .NETで 日本語対応の OCR文字認識アプリを自作する方法
Visual Studio 2013の C# .NETで 日本語対応の OCR文字認識アプリを自作する方法

  オフライン環境で動作可能な 世界各国語対応の OCR文字認識アプリを C# .NETで作成、MS製 OCRライブラリを使用

Visual Studio 2013の C#で日本語対応の手書き文字認識アプリを自作する方法
Visual Studio 2013の C#で日本語対応の手書き文字認識アプリを自作する方法

  オフライン環境で動作する世界各国語対応の手書き文字認識アプリを作成、MS製 手書き認識ライブラリを使用

Open XML SDKを使用して Officeのファイルを C#で自在に操る方法
Open XML SDKを使用して Officeのファイルを C#で自在に操る方法

  Microsoft Officeのファイルをプログラムで生成したり直接中身の読み取りができます

Visual Studioの各バージョンと開発できる .NET Frameworkの各バージョンのまとめ
Visual Studioの各バージョンと開発できる .NET Frameworkの各バージョンのまとめ

  .Microsoft.NET Framework Developer Packの各バージョンのダウンロードまとめ。言語パック等

Windows 10対応 Microsoft Speech使用の音声認識アプリ
Windows 10対応 Microsoft Speech使用の音声認識アプリ

  SpeechRecognizeApp 音声認識エンジンを使用してマイク入力の音声を認識します

Windows 10の音声合成エンジンを使用して入力した文字列を喋る & Waveファイル書き出し
Windows 10の音声合成エンジンを使用して入力した文字列を喋る & Waveファイル書き出し

  SpeechApp Windows 10用 Speech 音声合成 Text-to-Speech TTSのアプリ

Visual Studioの C#や MFC C++用のサンプルアプリのリンク集
Visual Studioの C#や MFC C++用のサンプルアプリのリンク集

  Visual Studioの C#や MFC C++でアプリを作る時の参考資料として

Windowsの Input Method Manager IMEや TSF Text Services Frameworkの公式情報源のまとめ
Windowsの Input Method Manager IMEや TSF Text Services Frameworkの公式情報源のまとめ

  Windowsで IME Input Method Manager関連のアプリを作成する時の情報 ImeTrayもこの辺を必死に読んだ

Microsoft Office 2016を無人インストール(自動インストール)する方法
Microsoft Office 2016を無人インストール(自動インストール)する方法

  インストールするコンポーネントを事前に設定する事で同一環境の構築が楽にできます MSオフィス 2016

Windows 10を全自動で最後まで手間要らずでインストールする方法
Windows 10を全自動で最後まで手間要らずでインストールする方法

  autounattend.xmlの応答ファイルを使用して Windows 10を無人インストールする。大量展開時に便利

Adobe Acrobat Reader関係のまとめ 2018年版、自動インストール、無人インストール方法
Adobe Acrobat Reader関係のまとめ 2018年版、自動インストール、無人インストール方法

  アップデート手順など、Adobe Reader XI、X、Acrobat Reader 9、Acrobat Reader 8




[HOME] | [BACK]
リンクフリー(連絡不要、ただしトップページ以外は Web構成の変更で移動する場合があります)
Copyright (c) 2019 FREE WING,Y.Sakamoto
Powered by 猫屋敷工房 & HTML Generator

http://www.neko.ne.jp/~freewing/software/visual_studio_dot_net_obfuscator/