[안드로이드] 버그판 MOD apk 앱 만들기

프로필

2018. 7. 11. 9:45

이웃추가

먼저 시작전에 참고한 사이트를 밝히겠습니다.
https://forum.sbenny.com/threads/the-basics-hacking-mod-android-games-with-net-reflector.4234/

본인도 이런건 잘 몰랐는데 설명이 잘 되어있어서 해봤습니다.
하지만 저는 이과생에 공대생이라 알수도 있습니다. 그냥 모르시면 패스!!ㅋㅋㅋ

Requirements:

1) Have the .apk file you want to hack. You can find the original version of every game in our games area: http://sbenny.com/ or, if you prefer, you can take a look on Google to find your desired game.
2) Have WinRar installed on your PC. 
3) Have .NET Reflector.. If you have troubles activating the crack of NET Reflector, please take a look at SusieQ's Tutorial about how to Download and Install NET Reflector.
4) Have "Reflexil", a required Plugin to hack files with .NET Reflector. 
5) Have an APK SIGNER. I personally use the one-click signer.


자 준비물입니다.
일단 NET Reflector라는 놈이 필요한데 이건 그냥 트라이얼 버전으로 받아서 쓰세요 한 14일 무료인가 합니다.

그리고 Reflexil 이라는 dll이 필요한데 이거 는 ADDON형식으로 된걸 받아서 NET reflector안에 넣을거니까요

여기 들어가서 다운로드 누르시면

이렇게 뜨는데
reflexil.for.Reflector.2.2.AIO.bin.zip
요런놈을 받으시면 됩니다.
안에 열면 *.dll 이 하나 있어요 그걸 쓰거임

그리고 원클릭 사이너라는게 있는데
이건 마지막에 모든 수정이 마친후에 쓸건데 이게 앱서명하는겁니다. 이거 꼭해야되요 안그럼 설치가 안됩니다.

이겁니다. 되게 간단해요..;;

https://apkpure.com/

그리고 수정할 어떤 앱의 원본파일이 필요한데요 여기서 다운받으시면 되요 (수정할 앱을 다운받으세요)



일단 준비는 다맞췄군요.;


이제 시작해봅시다 근데 이미 설명이 너무 잘되어있어서 번역하는식으로 진행할께요~~

Let's start

So, let's read what I'll write below very carefully, since it's easy to understand if you spend enough time reading, ok?
(좋아!! 출발해볼까? 준비됐지?)

1) The first step, after you grabbed your .apk file is to open it with WinRar (I personally rename the extension to .zip in order to open it automatically with WinRar, but you can simply do Right Click on the .apk file and select "Open With..." -> WinRar).
(첫번째로 apk를 압축파일이라고 생각하고 압축을 푸세요 뭐 7zip을쓰던 알집을 쓰던 상관은 없습니다. 잘 안되면 그냥 확장자를 .zip로 고쳐서 풀어도 되요)

2) Browse to the following path, inside the WinRar window: assets/bin/data/Managed/, like the screenshot below:

(여기서는  Assets /bin/data/managed 에 있는 dll만 풀라고 하는데 다 풀어도 되요 그리고 만약에 위 폴더가 없다? 그럼 이 방법으로는 못하는겁니다.)


3) Extract (you can simply drag them) all the .dll files of this archive into your desired folder (or, to be faster, just drag the entire "Managed" folder of the archive out of it.
(결국 Managed폴더안에 있는걸 풀라는 이야기 입니다.)

4) Now, Open NET Reflector, press F3 and Ctrl+M (this must be done every time, to quickly set up NET Reflector for our usage), load the "Reflexil" plugin by clicking on the Gear icon and move all the .dll files inside .NET Reflector's window (at the left, like in the screenshot below):


(자 이제 NET Reflector를 엽니다. 최신판 스샷이니 똑같이 보일거에요. 처음에 ,net dll을 열겠냐고 알림창이 뜰텐데 아니오 클릭해주세요 안그럼 좌측에 있는거 다 일일이 Delete해주세요 자 이제 Reflexil 요걸 에드인 시킬건데 .http://suspected.tistory.com/48 여기 설명이 잘 되있네요 ㅋㅋㅋ
일단 TOOLS 에 ADD IN을 눌러서Reflexil 의 dll있죠? 위에서 받은거 그거 열면됩니다. 쉽죠? 
추가가 잘됬으면 아래 그림처럼 메뉴쪽에 톱니바퀴 아이콘이 생겼을 겁니다. 그거 클릭하세요 그리고 F3 누르고 Ctrl+M 누릅니다.)


5) Now we're ready to search, so input your desired keyword in the Search Box and edit the desired code, like in the Screenshot below. Watch it carefully:


(자 아래 그림처럼 생겨먹었나요? 아직 아니죠? 파일 열기해서 APK 위에서 받아놨던거 엽니다. 그럼 비슷할거에요)


6) To edit the code, you need to right-click on the desired instruction you want to modify and select "Edit". When you're done with edits, click on Update, like in the screenshot below:
(자 뭐 이제 고치기만 하면됩니다. 원하는 부분에 가서 Edit을 눌러 값을 수정하거나 OPCODE를 변경합니다.)


7) Now, let's save our code. To do this, in the Left panel of .NET Reflector, scroll up until you find the name of the Assembly you modified, then do Right Click -> Reflexil -> Save, like in the screenshot below:


(이렇게 버그판을 만들면 저장합니다. 아래처럼 수정한 부분 최상단에 가서 우클릭 --> Reflexil -->저장)


8) It'll add ".Patched" to the original name the of the .dll file, so you know which one is the modified and which one is the original .dll file. Now, to be sure we modified the right code, let's load again the Assembly into .NET Reflector, to see how it does look now. (this step is optional, but recommended if you're not 100% sure the hack is properly coded:
(솔직히 지금봐서는 영어로 보는게 나을거 같아요 ㅋㅋ 일단 저장하면 이름뒤에 .pached라고 붙을거에요 이거 다시 열어서 잘 수정되었나 확인하세요)


9) Ok, in my example the codes were right so we can proceed adding the modified .dll file to our original .apk file. So we open the .apk file again with WinRar and replace the original "Assembly-Csharp.dll" (or any other .dll files you modified) with the one containing ".Patched", but of course, you need to rename the file to its original name, or the game will not load. So, in my example, I renamed Assembly-Csharp.Patched.dll to Assembly-Csharp.dll in order to restore its original name.
(여기서 부터는 중요합니다. 왜 중요하냐고요? 말귀를 잘 알아들어야해요 apk원본파일 있죠? 그거 잘 보관했던거 그걸 압축 프로그램으로 엽니다. 그럼 열릴거에요 거기다가 우리가 수정한 .patched 라고 이름 붙은 dll을 넣을 건데요  당연히 이름은 .patched를 뺀 원본이름과 같아야하겠죠.)

10) Now it's time to sign it (or you can 
add a splash screen if you want, before signing the .apk file). So we move the modified .apk file in the same folder of the "one_click_signer.cmd" file (or, if you use another apk signer, use your method to sign it), then we open it by double-clicking it and a Command Prompt window will appear.
All we need to do is to type:
(자이제 준비가 다끝났습니다. 서명을 해보도록 합시다.수정된 apk를 원클릭 사이너 폴더 안에 넣습니다. CMD가 하나 있을거에요 그거 여세요 그럼 아래처럼 커멘드 창이 하나뜹니다. 거기다가 "이름.apk" 라고 칩니다. 중요한건 "따옴표꼭 써야합니다. 그래야 인식해요 ㅋ)


Code:Copy all
"name of the apk file.apk"
and press Enter, like in the screenshot below (don't forget the "" symbols, they are part of the code you need to write!):


11) That's it! Our MOD APK file is ready! You'll find a new .apk file in this folder, starting with "signed-". This is the signed .apk file you can finally share! But first, of course, test the game and ensure it does properly work. If yes, it means you're a good hacker and you can finally upload the .apk file to share it with everyone! If the .apk file is not properly working, or if the codes you made aren't showing, well, don't lose hope! Just try again, modifying some other offsets! Good luck!
(자 끝났습니다. 뭐 정말 간단히 설명했지만 중요한건 다끝났어요 이제 핸폰에 옮겨서 실행해보세요)

OP코드가 뭐냐고요? 어떻게 돈치트 하냐고요?

OP코드는 어셈블리어와 같습니다. sub이게 빼기과 add이게 더하기죠
간단히 ADDMONEY라는 함수가 있다고해봅시다  이걸 Reflexil 를 통해보면 OPCODE에 무조건 ADD가 있겠죠? 이걸 MUL로 바꿔보면 어떻게 될까요 돈이 들어오면 곱셈이 되니까 뻥튀기가 되겠죠?
뭐 이런식으로 바꿉니다.
아니면 SUBMONEY 이딴 함수가 있으면 내부에 sub코드를 ADD로 바꾸면 돈을 쓸때마다 늘어나겠죠
그쵸?

원본 사이트 가시면 정말 자세히 써있으니 그거 참조하세요 ㅋㅋㅋㅋㅋㅋ 미안요 내 뇌가 더이상 이걸 왜하는지 모르겠다고 해서요 ㅠ

깁플XGipple
깁플XGipple

행복한 하루 되세요~