[.Net] C# ํ๋ก๊ทธ๋จ ๋ฐฐํฌ ์ ์์ค ์ฝ๋ ๋ณดํธ๋ฅผ ์ํ ๋๋ ํ, ConfuserEx ์ฌ์ฉ๋ฐฉ๋ฒ
์๊ฐ
C#์ผ๋ก ๋ง๋ ํ๋ก๊ทธ๋จ์ ๋ฐฐํฌํ ๋ ๊ฐ์ฅ ์ฃผ์ํด์ผ ํ ๋ถ๋ถ์ด ์์ต๋๋ค. ๋ฐ๋ก ์์ค ์ฝ๋๊ฐ ์ ์งํ๊ฒ ๋ ธ์ถ๋๋ค๋ ์ ์ธ๋ฐ์. ์ด์ ์ .Net Framework์์ ๊ฐ๋ฐ๋ ํ๋ก๊ทธ๋จ์ ๋์ปดํ์ผ๋ฌ์ ์ํด ์์ฃผ ๊ฐ๋จํ๊ฒ ์์ค ์ฝ๋๊ฐ ๋ ธ์ถ๋๋ค๋ ํฌ์คํ ์ ์ฌ๋ฆฐ ์ ์์ต๋๋ค.
[.Net] .Net Framework์ ๋์ปดํ์ผ๋ฌ(Decompiler) ILSpy ๋ฐ dotPeek ์์
๊ทธ๋์ C# ํ๊ฒฝ์์ ํ๋ก๊ทธ๋จ์ ๋ง๋ค ๋์๋ ํต์ฌ ๊ธฐ๋ฅ ๋๋ ์๊ณ ๋ฆฌ์ฆ์ C++ dll
๋ก, UI๋ C# ์ฝ๋
๋ง ์ด์ฉํ๋ฉด ์์ค ์ฝ๋๊ฐ ๋
ธ์ถ๋์ด๋ ๊ทธ๋ค์ง ํฐ ์ํ์ ์์ต๋๋ค. ํ์ง๋ง ์ด๋ฅผ ์ํด C++ dll import
๋๋ C++/CLI
๋ก Wrapper dll
์ ๋ง๋๋ ์์
์ด ํ์ํ๊ธด ํฉ๋๋ค.
์ด๋ฒ ํฌ์คํ ์์๋ C# ํ๋ก๊ทธ๋จ ์์ค ์ฝ๋ ๋ ธ์ถ์ ๋ฐฉ์งํ๊ธฐ ์ํ ๋ฐฉ๋ฒ ์ค ํ๋์ธ ๋๋ ํ๋ฅผ ์๊ฐํ๊ณ ์ ํฉ๋๋ค. ๋๋ ํ์ ์ฅ, ๋จ์ ๊ณผ ConfuserEx๊ฐ ๋ฌด์์ธ์ง ๊ทธ๋ฆฌ๊ณ ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง ์์๋ณด๊ฒ ์ต๋๋ค.
๋๋ ํ ์ ์ฉ ์ , ํ ๋น๊ต
์ฐ์ , ConfuserEx๋ฅผ ์ฌ์ฉํ์ฌ ๋๋ ํ๋ฅผ ์ ์ฉํ๊ธฐ ์ ๊ณผ ํ๋ฅผ ๋น๊ตํด ๋ณด๊ฒ ์ต๋๋ค. ์๋ ์ด๋ฏธ์ง๋ ๋๋ ํ ์ exe ํ์ผ์ JetBrains dotPeek๋ก ๋ถ์ํ ๊ฒฐ๊ณผ์ ๋๋ค. ์ฝ๋๊ฐ ๋๋ฌด ์ ๋๋ผํ๊ฒ ๋ ธ์ถ๋์ฃ ?
์๋ ์ด๋ฏธ์ง๋ ๋๋ ํ๊ฐ ์ ์ฉ๋ exe ํ์ผ์ ๋ถ์ํ ๊ฒฐ๊ณผ์ ๋๋ค. ํด๋์ค์ ํจ์, ๋ณ์์ ์ด๋ฆ ๋ชจ๋ ์ด์ํ ๋ฌธ์์ด๋ก ์นํ๋์ด ๋ถ์์ด ์ด๋ ต๊ฒ ๋์ต๋๋ค. ํด๋ ํ๊ณ ์ถ์ด๋ ์ ์๊ฐ ์์ต๋๋ค.
ConfuserEx ์ฅ์ ๊ณผ ๋จ์
์์์ ๋ดค๋ฏ์ด ๋๋ ํ๋ฅผ ํตํด ํด๋์ค, ํจ์ ๊ทธ๋ฆฌ๊ณ ๋ณ์์ ์ด๋ฆ์กฐ์ฐจ ํด๋ ํ๊ธฐ๊ฐ ์ด๋ ค์ ์ก์ต๋๋ค. ์ฆ, C#์์ ์ง์ ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ๋ฐํ๊ณ ๋๋ ํ๋ฅผ ์ ์ฉํ๋ฉด, ์ 3์๊ฐ ๋์ปดํ์ผ๋ฌ๋ฅผ ํตํด ์ฝ๋ ํด๋ ์ ์๋ํด๋ ์ฝ๊ฒ ๋ถ์์ด ๊ฐ๋ฅํ์ง ์์ต๋๋ค. ์ด๋ฌํ ์ ๋๋ฌธ์ C++ dll ์ ์ฉ์ด ํ๋ค๋ค๋ฉด ๋๋ ํ๋ฅผ ์ ์ฉํ๋ ๋ฐฉ๋ฒ๋ ์ข์ ๋ฐฉ์์ด ๋ ์ ์์ต๋๋ค.
ํ์ง๋ง ์์ฃผ ์น๋ช ์ ์ธ ๋จ์ ์ด ์์ต๋๋ค. ์๋์ฐ ๋ํ๋(Windows Defender) ๋๋ ๋ฐฑ์ ํ๋ก๊ทธ๋จ์์ ๋ฐ์ด๋ฌ์ค ํ์ผ๋ก ๊ฐ์ง๊ฐ ๋๋ค๋ ๊ฒ์ ๋๋ค. ์๋ ์ด๋ฏธ์ง์ฒ๋ผ ์๋์ฐ ๋ํ๋๋ ๋ฐฑ์ ํ๋ก๊ทธ๋จ์์ ๋๋ ํ๊ฐ ์ ์ฉ๋ ํ์ผ์ ์ ์ฑ์ฝ๋๋ก ์ธ์ํ์ฌ ์กฐ์น๊ฐ ์ทจํด์ง๊ธฐ ๋๋ฌธ์ ๋๋ค.
์กฐ์นํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ํ๋๋ ๋ฐฑ์ ํ๋ก๊ทธ๋จ์์ ์์ธ ํ๋ก๊ทธ๋จ์ผ๋ก ๋ฑ๋กํ๋ฉด ๋๋๋ฐ์. ๋ง์ฝ, ๋ณด์์ ์ค์์ํ๋ ๊ธฐ์ ์ด๋ผ๋ฉด ๋๋ ํ๋ ์ ์ฉํ์ง ๋ชปํ ์๋ ์์ต๋๋ค.
Visual Studio์์ ์ ๊ณตํ๋ Dotfuscator๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฐฑ์ ํ๋ก๊ทธ๋จ์ ๊ฐ์ง๋์ง ์๊ณ ์ ์์ ์ผ๋ก ๋๋ ํ๊ฐ ์ ์ฉ๋๋ค๊ณ ํฉ๋๋ค. ํ์ง๋ง ์ด Dotfuscator๊ฐ ์ ๋ฃ๋ก ์ ํ๋์๋ค๋ ๋ด์ฉ์ด ์๋๋ฐ์. ํด๋น ๋ฐฉ๋ฒ์ ๋ํด์๋ ํ ์คํธ ํ ํฌ์คํ ํ๋๋ก ํ๊ฒ ์ต๋๋ค.
ConfuserEx ์ค๋นํ๊ธฐ
ConfuserEx๋ ์๋ ์ฌ์ดํธ์ ์ ์ํ์ฌ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค.
๋ค์ด๋ก๋ํ ํ์ผ์ ์์ถ ํด์ ํ๊ณ , ConfuserEx.exe
ํ์ผ์ ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์คํํ๋ฉด ๋ฉ๋๋ค.
ConfuserEx ์ฌ์ฉํ๊ธฐ
๊ทธ๋ผ ์ด์ ConfuserEx๋ฅผ ์ฌ์ฉํด ๋๋
ํ๋ฅผ ์ ์ฉํด ๋ณด๊ฒ ์ต๋๋ค. ์ํ๋ก C# Winform ํ๋ก์ ํธ
๋ฅผ ํ๋ ์์ฑํ๊ณ , ์๋์ฒ๋ผ ๊ฐ๋จํ ์ฌ์น์ฐ์ฐ์ ํ๋ UI๋ฅผ ์ ์ฉํด ๋ณด์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์๋์ ๊ฐ์ด ๊ฐ ๋ฒํผ๋ง๋ค ์ฌ์น์ฐ์ฐ ์ฝ๋๋ฅผ ๊ตฌํํ์ต๋๋ค.
์ด๋๋ก ๋น๋ํ๋ฉด ์ถ๋ ฅ ํด๋์ ์๋์ ๊ฐ์ด exe ํ์ผ์ด ์์ฑ๋๊ณ , ํด๋น ํ์ผ์ dotPeek
๋ก ๋ถ์ํ๋ฉด ์์ค ์ฝ๋๊ฐ ๊ทธ๋๋ก ๋
ธ์ถ๋ฉ๋๋ค.
์ด์ ConfuserEx.exe๋ฅผ ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์คํํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ์ธก ์๋จ์ ... ๋ฒํผ
์ ํด๋ฆญํ์ฌ ์ ํ๋ก์ ํธ์ ์ถ๋ ฅ ๊ฒฝ๋ก๋ฅผ ์ ํํ๊ณ , ์๋์ + ๋ฒํผ
์ ํด๋ฆญํ์ฌ ๋๋
ํํ ์คํ ํ์ผ์ ์ ํํ๋ฉด ์๋์ ๊ฐ์ด ํ์๋ฉ๋๋ค.
๋ค์์ผ๋ก Settings ํญ ๋ฉ๋ด
๋ฅผ ํด๋ฆญํฉ๋๋ค. <Global settings>
๋ฅผ ์ ํํ๊ณ ์ฐ์ธก์ + ๋ฒํผ
์ ํด๋ฆญํ๋ฉด Rules:
์ true
๊ฐ ์ถ๊ฐ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์๋์ ์ฐํ ๋ชจ์ ๋ฒํผ
์ ํด๋ฆญํฉ๋๋ค.
Preset:
์ ์ฝค๋ณด ๋ฐ์ค๋ฅผ ํด๋ฆญํ๊ณ Maximum
ํญ๋ชฉ์ ์ ํํฉ๋๋ค. ๊ทธ ์ธ์ ํญ๋ชฉ์ ํ
์คํธํด ๋ณด์์ง๋ง ์๋ฒฝํ ๋๋
ํ๊ฐ ๋์ง ์๋๊ตฐ์.
๋ง์ง๋ง์ผ๋ก Protect! ํญ
์ Protect! ๋ฒํผ
์ ํด๋ฆญํ๋ฉด ๋๋
ํ๊ฐ ์ ์ฉ๋ฉ๋๋ค.
ํ๋ก์ ํธ ์ถ๋ ฅ ๊ฒฝ๋ก์ Confused ํด๋๊ฐ ์์ฑ๋์ด ์๊ณ , ๊ทธ ์์ ๋๋ ํ๊ฐ ์ ์ฉ๋ exe ์คํ ํ์ผ์ด ์์ฑ๋์ด ์์ต๋๋ค. ํด๋น ํ์ผ์ dotPeek๋ก ๋ถ์ํ๋ฉด ์ดํดํ๊ธฐ ์ด๋ ต๊ฒ ๋๋ ํ๊ฐ ์ ์ฉ๋์ด ์์ต๋๋ค.
๊ฒฐ๋ก
๊ฐ์ธ์ ์ธ ์๊ฒฌ์ผ๋ก C#์ผ๋ก ์ ์ํ ํ๋ก๊ทธ๋จ ๋ฐฐํฌ ์ ๋๋
ํ ์ ์ฉ์ ํ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ํต์ฌ ์๊ณ ๋ฆฌ์ฆ์ C++ dll
๋๋ C++/CLI
๋ก ์ ์ํ๊ณ , C#์์๋ UI ๊ด๋ จ ์ธํฐํ์ด์ค ๋๋ Component๋ง ์ฌ์ฉํ๋ฉด ์์ค ์ฝ๋๊ฐ ๋
ธ์ถ๋ผ๋ ์ฌ๊ฐํ์ง ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ๋ฌผ๋ก , C++ dll๋ ์ญ๋ถ์์ด ๊ฐ๋ฅํ๋ค๊ณ ํ์ง๋ง, ๊ทธ๋ ๊ฒ ๋ณด์์ด ์ค์ํ๊ณ ๊ธฐ์ ์ ๊ฐ์น๊ฐ ๋๋ค๊ณ ํ๋ค๋ฉด ConfuserEx๊ฐ ์๋ ์ ๋ฃ ์๋ฃจ์
์ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
'Programming > .Net' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋๊ธ
์ด ๊ธ ๊ณต์ ํ๊ธฐ
-
๊ตฌ๋
ํ๊ธฐ
๊ตฌ๋ ํ๊ธฐ
-
์นด์นด์คํก
์นด์นด์คํก
-
๋ผ์ธ
๋ผ์ธ
-
ํธ์ํฐ
ํธ์ํฐ
-
Facebook
Facebook
-
์นด์นด์ค์คํ ๋ฆฌ
์นด์นด์ค์คํ ๋ฆฌ
-
๋ฐด๋
๋ฐด๋
-
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
-
Pocket
Pocket
-
Evernote
Evernote
๋ค๋ฅธ ๊ธ
-
[.Net] C#์์ ๋ค์ด๋ฒ ๋ด์ค REST API๋ก ์ํ๋ ๋ด์ค๋ง ์์งํ๊ธฐ (์์ ํฌํจ)
[.Net] C#์์ ๋ค์ด๋ฒ ๋ด์ค REST API๋ก ์ํ๋ ๋ด์ค๋ง ์์งํ๊ธฐ (์์ ํฌํจ)
2021.03.18 -
[.Net] C# ํ๊ธ๊ณผ ์ปดํจํฐ HwpCtrl ์ ๊ทผ ํ์ฉ ์ค๋ฅ ํด๊ฒฐํ๊ธฐ
[.Net] C# ํ๊ธ๊ณผ ์ปดํจํฐ HwpCtrl ์ ๊ทผ ํ์ฉ ์ค๋ฅ ํด๊ฒฐํ๊ธฐ
2021.03.16 -
[.Net] C# ํ๊ธ๊ณผ ์ปดํจํฐ hwp ๋ฌธ์ ๋ถ๋ฌ์ค๋ ํ๋ก๊ทธ๋จ ๋ง๋ค๊ธฐ (์์ ํฌํจ)
[.Net] C# ํ๊ธ๊ณผ ์ปดํจํฐ hwp ๋ฌธ์ ๋ถ๋ฌ์ค๋ ํ๋ก๊ทธ๋จ ๋ง๋ค๊ธฐ (์์ ํฌํจ)
2021.03.13 -
[.Net] C# WinForm์์ Metro UI(Modern UI) Framework ์ ์ฉํ๊ธฐ(์์ ํฌํจ)
[.Net] C# WinForm์์ Metro UI(Modern UI) Framework ์ ์ฉํ๊ธฐ(์์ ํฌํจ)
2021.03.07