๐ ๋ด Minecraft ์ปค๋ ๊ณ ๊ฐ์ ์ด๋ป๊ฒ ๋ณดํธํ๋์ง
10724 ๋จ์ด securityminecraftcheatingprotection
๐งโ๐ป ๊ณ ๊ฐ์ ์์ด๋ค
๊ทธ๋์ ์ ๊ฐ ๊ณ ๊ฐ์ ๋ํ ๋ณดํธ๋ฅผ ์ด๋ป๊ฒ ํ๋์ง ์ค๋ช ํ๊ธฐ ์ ์ ๋ถ์ ํ์ ๊ณ ๊ฐ์ด ์ด๋ป๊ฒ ์ผ์ ํ๋์ง ์ค๋ช ํ๊ณ ์ถ์ต๋๋ค.
์ฒ์์ผ๋ก ๊ณ ๊ฐ์ด ๋๊ณ ์ถ์ ๋, ๋ฌด์์ ์ธ์ฝ๋ฉํด์ผ ํ๋์ง, ์ด๋์ ์ธ์ฝ๋ฉํด์ผ ํ๋์ง ์์์ผ ํ๋ค.๋ต์ ๊ฐ๋จํ๋ค. ๊ณต์ Minecraft ํด๋ผ์ด์ธํธ์ ์์ ์ ์ฝ๋๋ฅผ ์ถ๊ฐํ ์ ์๋ค.๋น์ ์ ๋ชจ๋ฅผ ์๋ ์์ง๋ง, Minecraft Coder Pack ๊ณต๊ฐ๋ ๋ฒ์ ์ด ์๋๋ฐ, ๋๊ตฌ๋ Minecraft ์์ฒด์ ์๋ณธ ์ฝ๋์ ์ ๊ทผํ ์ ์๋ค.
์ด์ ์ฐ๋ฆฌ๋ ์ด๋์์ ์ธ์ฝ๋ฉ์ ํ๋์ง, ์ด๋ป๊ฒ ์ธ์ฝ๋ฉํ๋์ง, ๊ทธ๋ฆฌ๊ณ ๋ฌด์์ ์ธ์ฝ๋ฉํ๋์ง ์์์ผ ํ๋ค.์ด ๋ฌธ์ ์ ๋ต์ ๋งค์ฐ ๊ฐ๋จํ๋ค. ์๋ํ๋ฉด Minecraft๋ ์๋ฐ๋ก ์์ฑ๋์๊ธฐ ๋๋ฌธ์ด๋ค. ์ด๊ฒ์ ๋น์ ์๊ฒ ์ผ์ข ์ ๊ฐ๋ฅ์ฑ์ ๋จ๊ฒผ๋ค. JVM์ผ๋ก ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ๋น์ ์ ํด๋ผ์ด์ธํธ๋ฅผ ์์ฑํด์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค. ๊ฐ์ฅ ์ ํํ๋ ๊ฒ์ ๋จ์ฐ Kotlin๊ณผ ์๋ฐ์ด๋ค.๋ ๊ฐ๋จํ๊ฒ ํ๊ธฐ ์ํด์, ๋๋ ์๋ฐ์ ๋ํด ์ฝ๊ฐ์ ์ง์์ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์, ์๋ฐ๋ฅผ ์ ํํ๊ธฐ๋ก ๊ฒฐ์ ํ๋ค.์ง๊ธ ๋ฌธ์ ๋ ์ธ์ฝ๋ฉ์ด ๋ญก๋๊น?๋๋ถ๋ถ์ ๋ถ์ ํ์ ํด๋ผ์ด์ธํธ๋ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ์ฑ ์์๋ฅผ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ๊ฐ๋จํ๋ค.
๊ทธ๋ฌ๋ ๋๋ ๋ด๊ฐ ์คํํ ์๋ก ๋ค๋ฅธ ์์ ์ธต์ ๋๋์๋ณด๋ฉด ํ๋ฆผ์์ด ๊ฐ์ฅ ์ข์ ๊ฒ์ ์๋ ๊ฒ์ด๋ค.๊ทธ๋ฌ๋ 5๋ ์ ์ ๋๋ ์๋์ค๋ฌ์ ๋ค.) ๋ฌผ๋ก ์ด ๋ชจ๋ ๊ฒ์ ๋์๊ฐ ์ ์๊ณ , ๋ง์ ๋ค๋ฅธ ์ผ์ ํ ์ ์์ง๋ง, ๋ค์ ํ ๋ฒ.๋๋ ๋ด๊ฐ ํด๋ธ ๊ฒ์ ๋งค์ฐ ๊ธฐ์๊ฒ ์๊ฐํ๋ค:)
๐ ๋ก๊ทธ์ธ
๊ฐ์ฅ ์์ฃผ ์ฌ์ฉ๋๊ณ ์๋ ค์ง ๋ณดํธ ์ค ํ๋๋ ๋ก๊ทธ์ธ ๋ฐฉ๋ฒ์ ์ค์ ํ๋ ๊ฒ์ ๋๋ค.๋ฌผ๋ก , ํด๋ผ์ด์ธํธ์ ์ฆ๋ช ์๋ฅผ ํ๋์ฝ๋ฉํ๊ณ ์ถ์ง ์๊ธฐ ๋๋ฌธ์ ์น ์๋ฒ๊ฐ ํ์ํฉ๋๋ค.๊ทธ๋์ ๋๋ ๋ด๊ฐ ์คํํ๊ธฐ๋ก ํ ๋ค์ํ ์ข ๋ฅ์ ๋ก๊ทธ์ธ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด ๊ฐ๋จํ PHP ํ์ผ์ ๋ง๋ค์๋ค.
์ฌ์ฉ์ ์ด๋ฆ ๋ฐ ์ํธ
์ด๊ฒ์ ๋ด๊ฐ ์คํํ ์ฒซ ๋ฒ์งธ ๋ฐฉ๋ฒ์ด๋ค.๋ด๊ฐ ํด์ผ ํ ์ ์ผํ ์ผ์ ๋ด ์ฌ์ดํธ์ ๋ก๊ทธ์ธํ๋ ๋จ์ ์ ๋ง๋ค์ด์ ์ฌ์ฉ์๊ฐ ๊ทธ๋ค์ ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ๋น๋ฐ๋ฒํธ๋ฅผ ์ฌ์ฉํ์ฌ ํด๋ผ์ด์ธํธ์์ ๋ก๊ทธ์ธํ๋๋ก ํ๋ ๊ฒ์ด๋ค.๊ทธ๋ฆฌ๊ณ ํด๋ผ์ด์ธํธ๋ ํค๋๋ฅผ ํตํด ์๋ฒ์ ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณด๋ด๊ณ ์๋ฒ๋ ์ฆ๋น์๋ฅ๊ฐ ์ ํํ์ง ๊ฒ์ฌํ๋ค.๊ทธ๋ฌ๋ฉด ์๋ฒ๋ ์ง์ ๋ ์๊ฒฉ ์ฆ๋ช ์ด ์ฌ๋ฐ๋ฅธ์ง ํ์ธํ๊ธฐ ์ํด JSON ๊ฐ์ฒด๋ก ์๋ตํฉ๋๋ค.JSON ๊ฐ์ฒด๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
{
"status": {
"message": "Login successful",
"code": 200
},
"data": {
"username": "Krypton",
"role": "Admin",
"uuid": 7331,
"access_token": "4kzAEOcyCbrTdtIgdXzIgsrEwGGadrZNJigGkW33llSpuhkh"
}
}
๋๋ถ๋ถ์ ํ๋, ์๋ฅผ ๋ค์ด role
๋ username
๋ ๋์ค์ ํด๋ผ์ด์ธํธ์์ ์ง์ ์ฌ์ฉํ ์ ์๋๋ก ๋ฉ์ธ ๋ฉ๋ด์ ์ด๋ฌํ ์ ๋ณด๋ฅผ ํ์ํ๊ธฐ ์ํด์์ด๋ค.access_token
๋ ์ฌ์ฉ์์ ์ค์ ๊ณผ ํด๋น ์ฌ์ฉ์๋ง ์ ๊ทผํ ์ ์๋ ๋ค์ด๋ก๋ ๋ด์ฉ์ ๊ฒ์ฆํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์ํจ์ด๋ค.ํ ํฐ ๋จธ๋
์์ JSON ๊ฐ์ฒด์ ๊ฐ์ด ์๋ต์ ๋ํ ํ๋
access_token
๊ฐ ํ์๋ฉ๋๋ค.์ด ์ํจ๋ ๋ค์ด๋ก๋ ์ค์ ์ด๋ ๋ค๋ฅธ ์ฉ๋๋ฟ๋ง ์๋๋ผ ๋ก์ปฌ ์ปดํจํฐ์ ์ ์ฅ๋์ด ์๋ ๋ก๊ทธ์ธ์ ์ฌ์ฉ๋๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ๋น๋ฐ๋ฒํธ๋ฅผ ํญ์ ์ ๊ณตํ ํ์๊ฐ ์์ต๋๋ค.์ด๊ฒ์'๋๋ฅผ ๊ธฐ์ตํด๋ผ'์ ์ต์
์ด๋ค.๋ฐ๋ผ์ ์ํจ๋ฅผ ์ฌ์ฉํ๋ ๋ก๊ทธ์ธ ๋ฐฉ๋ฒ์ ๋์ฑ ๊ฐ๋จํ๊ณ ์ฌ์ฉ์๊ฐ ์ฐํธ์ ์ด๋ค.์ด ์ํจ๋ฅผ ์ด๊ธฐํํ๋ ค๋ฉด ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณ๊ฒฝํ ๋ค์ ๋ก์ปฌ ์ปดํจํฐ์ ์ ์ ๊ทผ ์ํจ๋ฅผ ๋ฎ์ด์ฐ๊ธฐ ์ํด ๋ค์ ๋ก๊ทธ์ธํด์ผ ํฉ๋๋ค.
๐ฝ ํ๋์จ์ด ID(HWID)
๋ฌผ๋ก ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ๋น๋ฐ๋ฒํธ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ๋จํ ๋ก๊ทธ์ธ์ ํ๋ ๊ฒ์ด ํญ์ ์ข์ ์ ํ์ ์๋๋ค. ์ด๊ฒ์ด ๋ฐ๋ก ๋ด๊ฐ ํ๋์จ์ด ํ์ง๋ฅผ ์ฌ์ฉํ์ฌ ์ ํํ ์ฌ์ฉ์ ๋ก๊ทธ์ธ์ ํ๋ณดํ๊ธฐ ์์ํ ๊ณณ์ด๋ค.HWID๋ ์๋ก ๋ค๋ฅธ ํ๋์จ์ด ๊ตฌ์ฑ ์์์ ๋ฐ๋ผ ๊ณ์ฐ๋ ๋ค์์ ๋ชจ๋ ๊ธฐ๊ณ์ ์ ์ผํ ID๋ฅผ ์ ๊ณตํ๋ค.๋ฌผ๋ก ์ด HWID๋ ์๊ธฐ ์ฝ์ง๋ง ๊ฐ๋จํ ๊ฒ์ฌ์ผ ๋ฟ ๋ง์ ์๊ฐ์ ๋ค์ผ ํ์๊ฐ ์๊ณ ์ข์ ์ผ๋ง ํ ์ ์๋ค.ํด๋ผ์ด์ธํธ์์ ์์ฒญํ ๊ฐ ์์ฒญ์ ๋ํด์๋ ํด๋น ์ฌ์ฉ์์ HWID๊ฐ ์๋ฒ์ ์ ์ก๋ฉ๋๋ค.๊ทธ๋ฆฌ๊ณ ์๋ฒ์์ HWID๊ฐ ์ฌ๋ฐ๋ฅธ์ง ํ์ธํ๊ณ ์ฌ๋ฐ๋ฅด๋ฉด ๋ค๋ฅธ JSON์ผ๋ก ๋์๊ฐ๋๋ค. ์์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ต๋๋ค.HWID๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
111919518612-1211951819-1111919518612-1-1-1-1-1-1-11313-11519-124
๋๋ ์ด๋ฐ HWID๋ฅผ ์ด๋ป๊ฒ ์ฝ๊ฒ ์ป์ ์ ์๋์ง์ ๊ดํ ๊ธฐ๋ณธ์ ์ธ repository public ์ ๋ง๋ค์๋ค.๋ฌผ๋ก ๋ด๊ฐ ํด๋ผ์ด์ธํธ์์ ์คํํ๋ ๋ฐฉ๋ฒ์ ๊ณต๊ณต ์ ์ฅ์์ ์ฝ๊ฐ ๋ค๋ฅด์ง๋ง ์ฌ์ ํ ๋งค์ฐ ๊ฐ๋จํ๋ค.์ด๊ฒ์ ๋ ๋ค๋ฅธ ์ ํํ ์ฌ๋์ด ์ ํํ ์ฌ์ฉ์์๊ฒ ๋ก๊ทธ์ธํ๊ณ ๊ณ์ ์ ๊ณต์ ํ๋ ๊ฐ๋จํ ๋ฐฉ๋ฒ์ด๋ค.
๐ ์ค์์น๋ฅผ ๋๋ค
kill ์ค์์น๋ ๋ด๊ฐ ์คํํ ๋ง์ง๋ง ์์ ์ธต์ด๋ค.์ด๊ฒ์ ๋งค์ฐ ๊ธฐ๋ณธ์ ์ด๊ณ ์ ์ฉํ ์ํฉ์์ ๋๋ ๋๊ตฌ์ ๋ก๊ทธ์ธ๋ ๋ง๊ณ ์ถ๋ค.์๋ฅผ ๋ค์ด ํด๋ผ์ด์ธํธ๋ 5๋ถ ๊ฐ๊ฒฉ์ผ๋กkillswitch ๋ ธ๋์ ๊ฐ๋จํ ์น ์์ฒญ์ ๋ณด๋ด์killswitch๊ฐ ํ์ฑํ๋์ง ์์๋์ง ํ์ธํฉ๋๋ค.ํ์ฑํ๋๋ฉด ํด๋ผ์ด์ธํธ๊ฐ ์๋์ผ๋ก ๋ก๊ทธ์์ํ๊ณ Minecraft๋ฅผ ๋ซ์ต๋๋ค.๊ทธ๊ฒ์ ๋งค์ฐ ๊ฐ๋จํด์ ๋๋ ์ธ์ ๋ ์ง ํธ์งํ ์ ์๋ค.๋ฐํ๋ JSON ๊ฐ์ฒด๋ ๋งค์ฐ ๊ฐ๋จํฉ๋๋ค.
{
"status": {
"message": "Kill switch is enabled",
"code": 403
},
"data": {
"kill_switch": true
}
}
ใ๏ธ ๋ค์์ด๋ค
๋ด ๊ณ ๊ฐ์ ํํน์ํค๋ ๊ฒ์ ์๋ง๋ ๋ด๊ฐ ๊ทธ๊ฒ์ ๋ฐํํ ๋ ์คํํ ์ ์๋ ๋ง์ง๋ง ์์ ์กฐ์น์ผ ๊ฒ์ด๋ค.๋๋ ์ง๊ธ๊น์ง ์ด ๊ณ ๊ฐ์ ์๋ฐฉํ ์ ์ด ์๊ธฐ ๋๋ฌธ์, ๋๋ ์ง๊ธ๊น์ง ์ง์ ์ผ๋ก ํด๋ธ ์ ์ด ์๋ค.ํ์ง๋ง, ๋๋ ์ด๊ฒ์ด ์ด๋ป๊ฒ ์ผ์ ํ๋์ง ์ค๋ช ํ ์ ์๋ค!
๊ฐ๋จํ๊ฒ ๋งํ์๋ฉด, ๋น์ ์ ์ฝ๋๋ ์ธ๊ฐ์๊ฒ๋ ์ฝ์ ์ ์์ง๋ง, ์ฌ์ ํ ์คํํ ์ ์๊ณ , ์์ ํ ์ผํ ์ ์๋ค.ProGuard๊ฐ ์ด๋ฅธ๋ฐ ๋ชจํธ๊ธฐ์ ํ ์๋ค.
๋ค์์ this ๋ชจํธ ์ฒ๋ฆฌ ํ๋ก๊ทธ๋จ์์ ๋ชจํธ ์ฒ๋ฆฌ๋'Helloworld'ํ๋ก๊ทธ๋จ์ ๊ฐ๋จํ ๋ฒ์ ์ผ๋ก ๊ฒ์ฌํ ์ ์๋ ์ ์ฒด ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์์ต๋๋คthis link.
public class HelloWorld {
public static void main(final String[] array) {
// invokedynamic(1:(Ljava/io/PrintStream;Ljava/lang/String;)V, invokedynamic(0:()Ljava/io/PrintStream;), HelloWorld.llII[HelloWorld.lllI[0]])
float lllllllIlIllIII = HelloWorld.lllI[0];
while (llIll((int)lllllllIlIllIII, HelloWorld.lllI[1])) {
// invokedynamic(2:(Ljava/io/PrintStream;I)V, invokedynamic(0:()Ljava/io/PrintStream;), lllllllIlIllIII)
++lllllllIlIllIII;
"".length();
if (" ".length() == (" ".length() << (" ".length() << " ".length()) & ~(" ".length() << (" ".length() << " ".length())))) {
throw null;
}
}
}
}
๋๋ ๋ค๊ฐ ์ด๋ฏธ ํผ๋๊ธฐ์ ๊ธฐ๋ฅ์ ์ดํดํ๋ค๊ณ ์๊ฐํ๋ค:)๐ ๊ฒฐ๋ก
๋ด ๊ณ ๊ฐ์ ๋ฐ๋ก ์ด๋ ๊ฒ ์ค๊ณํ ๊ฒ์ด๋ค.๋๋ ๊ทธ๊ฒ์ ๊ฐ๋ฅํ ํ ๊ฐ๋จํ๊ฒ ํด์ ๋ชจ๋ ์ฌ๋์ด ๊ทธ๊ฒ์ ์ฌ์ฉํ ์ ์๊ฒ ํ๋ค.๋น์์ ๋๋ ๊ฒฐ๊ณผ์ ๋ํด ๋งค์ฐ ๋ง์กฑํ์ง๋ง, ๋๋ ์ง๊ธ๊น์ง ๋์ค์๊ฒ ๋์ ๊ณ ๊ฐ์ ๊ณต๊ฐํ ์ ์ด ์๋ค.์ด๊ฒ์ ์๋ํ ์๊ฐ์ผ๋ก ์ด ํ๋ก์ ํธ์์ ์ผํ์ง๋ง, ๋ชจ๋ ๊ฒ์ด ๋๋ฌ๋ค. ๊ทธ๋ ์ง?
์๋ง๋ ์ธ์ ๊ฐ ๋ด๊ฐ ๋์์์ ์ด๋ฐ ๊ณ ๊ฐ์ ๋ง๋ค๊ฑฐ๋ ์ผ๋ฐ์ ์ธ ํฉ๋ฒ์ ์ธ ๊ณ ๊ฐ์ ๋ง๋ค ๊ฒ์ด๋ค. ๋๊ฐ ์๊ฒ ๋๊ฐ: D
Reference
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(๐ ๋ด Minecraft ์ปค๋ ๊ณ ๊ฐ์ ์ด๋ป๊ฒ ๋ณดํธํ๋์ง), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://dev.to/kkrypt0nn/how-i-protected-my-minecraft-cheating-client-4d65ํ ์คํธ๋ฅผ ์์ ๋กญ๊ฒ ๊ณต์ ํ๊ฑฐ๋ ๋ณต์ฌํ ์ ์์ต๋๋ค.ํ์ง๋ง ์ด ๋ฌธ์์ URL์ ์ฐธ์กฐ URL๋ก ๋จ๊ฒจ ๋์ญ์์ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค