Hướng dẫn hack game PlayStation 3 Nhiều hệ máy console đời sau như PS3, PSP, NDS hay Wii, Xbox... có cấu trúc gần giống với cỗ máy tính (PC) hơn các thế hệ console đời đầu. Và game cho những hệ máy sau này cũng được lập trình bằng ngôn ngữ gần gũi với các ngôn ngữ bậc cao hơn, cho nên việc hack vào dữ liệu của những hệ máy console đời sau này khá dễ dàng. Bài viết này hướng dẫn cách can thiệp vào file Eboot.bin của game PS3 để phục vụ cho việc cheat/dịch game, tìm hiểu cấu trúc game.... Khi mở một game PS3, ta sẽ thấy cách sắp xếp thư mục của nó khá giống với PSP. Đối với game PS3, file EBOOT.BIN là phần chương trình chính, phụ trách khởi động game và thực hiện nhiều xử lý khác. Khi can thiệp vào file này, ta có thể biến nhân vật trong game thành "bất tử", không bao giờ hết HP, hết đạn... Vậy thì nó khác gì so với việc dùng cheat code? Việc dùng cheat code chỉ có tác dụng khi ta kích hoạt phần mềm/thiết bị cheat code. Còn khi chỉnh sửa file EBOOT.BIN thì mọi chỉnh sửa đều có giá trị vĩnh viễn, vì nó được mã hóa "cứng" vào trong mã game. 1. Công cụ giải mã Tuy nhiên cần phải biết là file EBOOT.BIN đã được mã hóa nên không thể can thiệp trực tiếp được. Trước khi can thiệp thì cần phải giả mã nó. Bằng kiến thức về PlayStation 3 và công cụ Hex Editor bình thường, ta có thể giải mã nó dễ dàng. Tuy nhiên bài viết này nhằm đến đối tượng người không có kiến thức về PlayStation 3 nên tôi không đi sâu vào phần này, mà chỉ giới thiệu một công cụ giúp người không biết gì cũng giải mã được file EBOOT.BIN một cách dễ dàng. Đầu tiên, tải công cụ giải mã tại đây (click). Để sử dụng công cụ này, ta phải bước qua một số thao tác tuần tự như được giới thiệu ở đây. 2. Giải mã EBOOT.BIN + Giải nén công cụ vừa tải về, đặt file EBOOT.BIN vào chung thư mục này (thư mục có resigner.exe). + Khởi động resigner.exe, thực hiện "1. Decrypt EBOOT.BIN Only" + Sau khi quá trình giải mã kết thúc, bạn có thể tắt công cụ này. + Sau khi chạy công cụ, file EBOOT.BIN sẽ được giải mã, thư mục "EBOOT.ELF" được công cụ tạo ra tự động. + Nên xóa file EBOOT.BIN cũ hoặc đổi tên nó, hay di chuyển sang thư mục khác để tránh nhầm lẫn file. 3. Chỉnh sửa EBOOT.ELF Khi có được file EBOOT.ELF, ta tiến hành chỉnh sửa bằng Hex editor. Nhưng chỉnh sửa cái gì, ở địa chỉ nào thì bạn cần phải có kiến thức về game mà mình muốn hack. Địa chỉ nào có ý nghĩa gì, điều này khác nhau tùy từng game. Có thể tham khảo các trang cheat code để hiểu rõ hơn. 4. Mã hóa EBOOT.ELF sau khi chỉnh sửa Sau khi đã chỉnh sửa file EBOOT.ELF, ta cần phải mã hóa nó thành EBOOT.BIN. + Khởi động resigner.exe, chạy "3. Resign to NPDRM EBOOT" + Thao tác chọn NPDRM lần này là không cần thiết, nhưng sẽ cần khi đóng gói game. + Nó sẽ đòi hỏi "Content ID" nằm trong EBOOT, nên hãy nhập ID đúng (hoặc nhập đại cũng được) vào. + Có thể xóa file EBOOT.ELF vì không còn cần đến nó nữa. + Công cụ sẽ mã hóa thành EBOOT.BIN. Vì nó có chức năng nén nên có thể bạn sẽ thấy file mới có dung lượng thấp hơn file cũ. Có thể tắt chức năng nén cũng không sao. + Copy EBOOT.BIN mới được tạo thành vào thư mục game và xác nhận thay đổi trên PS3/giả lập PS3. BONUS Đây là công cụ dump (trích xuất) để kiểm tra xem file EBOOT.ELF sau khi giải mã có hoạt động đúng hay không. Click vào đây để tải. Cách dùng: command # vdappc.exe EBOOT.ELF > Dump.txt http://gokuraku-shujo.blogspot.com/2015/12/hackps3.html
Hướng dẫn hack save PlayStation 3 Ngoài cách hack vào file Eboot.bin của PS3 như đã hướng dẫn lần trước, ta còn có thể hack vào file save của game. Nếu như hack vào file Eboot.bin có tác dụng vĩnh viễn, dù chơi lại từ đầu thì dữ liệu hack vẫn còn tác dụng thì việc hack vào file save chỉ có giá trị trong chính save đó. Nếu ta load save khác, hoặc chơi lại từ đầu thì giá trị hack mất tác dụng. I. Tóm tắt quy trình Các bước hack file save PS3 như sau: - Xác định dữ liệu (con số) cần hack trong game - Chuyển save PS3 cần hack sang PC - Backup file save - Giải mã save PS3 trên PC - Dùng hex editor xác định dữ liệu cần hack trong file save - Dùng hex editor chỉnh sửa dữ liệu sau khi xác định - Chuyển file save đã chỉnh sửa vào máy PS3 II. Cần chuẩn bị - Kiến thức về hệ số thập lục/thập phân. Không biết thì tra Google. - Phần mềm hex editor bất kỳ. Tải từ Google. - Phần mềm giải mã file save PS3. Ở đây dùng Bruteforce, tải từ Google. - Một USB format ở định dạng FAT32 để máy PS3 nhận dạng được. III. Cụ thể Ví dụ trong bài này là game Saint Seiya chiến ký (Bandai Namco, 2011). Vào game, tôi có nhân vật Deathmask với chỉ số Cosmo là 3020, quá yếu và tôi muốn thay đổi chỉ số này cho nhiều (mạnh) lên. Đầu tiên, tôi ghi nhớ chỉ số Cosmo này (3020), đổi nó sang hệ thập lục thì được 0x0BCC. Vì các loại máy tính không dùng hệ thập phân như con người nên ở đây phải chuyển sang hệ thập lục. Ở đây có thể nói chắc một điều là con số 0x0BCC nằm ở đâu đó trong file save, và ta cần tìm nó để thay đổi. Tiếp theo, copy file save này sang USB (định dạng FAT32) qua XMB của máy PS3. Rút USB ra và cắm vào máy tính. Từ đây ta sẽ dò tìm số 0x0BCC trong file save này bằng hex editor. Tuy nhiên mọi việc không đơn giản như vậy. Bởi vì file save của tất cả các game trên PS3 đều được mã hóa theo một định dạng của máy trước khi CPU của PS3 đọc. Do vậy ta cần giải mã file save này. Tải và cài đặt Bruteforce. Bật phần mềm này và browse tới chỗ chứa save trong USB. Click chuột vào file save, đoạn nhấn vào tab "Decrypt PDF" --> Decrypt All Files. Sau đó thì tắt Bruteforce. Bấy giờ file save đã được Bruteforce giải mã, trở thành định dạng như khi được PS3 đọc. Lúc này hãy bật hex editor, tìm con số 0BCC. Có thể có nhiều hơn một kết quả nên cần thử từng trường hợp. Ở đây tôi tìm được 0x0BCC ở địa chỉ 0x0678. Việc tiếp theo là chỉnh sửa con số này thành số mong muốn. Chẳng hạn ở đây sửa thành FFFF, tức chỉ số Cosmo của Deathmask sẽ trở thành 65535 nếu đưa save này cho PS3 đọc. Đoạn, save lại file, tắt hex editor. Lúc này hãy bật lại Bruteforce, browse đến dữ liệu save đã chỉnh sửa, chọn "Update PFD" --> Update PFD (Partial) để mã hóa trở lại. Kế tiếp, nhấn vào tab "Verify PDF" để kiểm tra quá trình mã hóa có gì bất thường không. Nếu các thông báo đều OK hết thì chuyển sang tab "Rebuild" --> Rebuild Partially. Sau đó, rút USB ra khỏi PC và cắm vào PS3, ghi đè lên save sẵn có trong PS3. Cuối cùng, vào game và kiểm tra thành quả. IV. Một số lưu ý - Backup save trước khi nghịch - Quá trình dò tìm có thể ra nhiều địa chỉ mang cùng giá trị ta muốn tìm. Hãy thử từng địa chỉ một (vì thế nên cần phục hồi lại backup nếu ta xác định sai) hoặc chọn một con số khác "độc đáo" hơn trong game. - Nếu con số bạn cần tìm là số phổ thông từ 0~9 thì kết quả dò tìm sẽ ra rất nhiều địa chỉ. Trường hợp này thì nên so sánh nhiều file save để tìm. Chẳng hạn, tạo save khi nhân vật có HP = 9, tạo một save khác khi HP = 8, rồi so sánh hai save này trong hex editor để tìm ra điểm khác nhau. - Một số game có chức năng kiểm tra checksum của file save. Do vậy, khi gặp những game này thì bạn cần phải nắm rõ cách game kiểm tra checksum như thế nào, từ đó sửa lại checksum sau khi đã chỉnh sửa dữ liệu.
Máy mình PS3 Model CECH-3012B Ver 4.53, hồi trước có đem ra Halo hack kiểu bung máy gắn chip gì đó, chơi game bằng ổ cứng ngoài, thì mình làm sao để tự tải game về chơi vậy ạ ? Xin cảm ơn