Update crack ParallelsToolbox-6.0.0-4536

This commit is contained in:
somebasj 2022-10-22 23:51:01 +08:00
parent d5a28f1fcf
commit 9129229c23
64 changed files with 660 additions and 0 deletions

BIN
assets/PTFM.VolumeIcon.icns Normal file

Binary file not shown.

BIN
assets/PTFM.background.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 KiB

BIN
crack/LicenseServices Executable file

Binary file not shown.

View File

@ -0,0 +1,121 @@
# Crack For Parallels Toolbox
crack for 6.0.0-4536
## 1. LicenseServices
Location: `Contents/Frameworks/LicenseServices.framework/Versions/A/LicenseServices`
patch function `-[LICLicenseInfo rawStatus]` to `return 0`
### x86_64
```
__text:0000000000009AB4 ; int __cdecl -[LICLicenseInfo rawStatus](LICLicenseInfo *self, SEL)
__text:0000000000009AB4 __LICLicenseInfo_rawStatus_ proc near ; DATA XREF: __objc_const:00000000001570C0↓o
__text:0000000000009AB4
__text:0000000000009AB4 var_30 = qword ptr -30h
__text:0000000000009AB4
__text:0000000000009AB4 55 push rbp
__text:0000000000009AB5 48 89 E5 mov rbp, rsp
__text:0000000000009AB8 41 57 push r15
__text:0000000000009ABA 41 56 push r14
__text:0000000000009ABC 41 55 push r13
__text:0000000000009ABE 41 54 push r12
__text:0000000000009AC0 53 push rbx
__text:0000000000009AC1 50 push rax
__text:0000000000009AC2 49 89 FC mov r12, rdi
__text:0000000000009AC5 48 8B 7F 18 mov rdi, [rdi+18h] ; id
__text:0000000000009AC9 FF 15 01 27 13 00 call cs:_objc_retain_ptr
__text:0000000000009ACF 49 89 C7 mov r15, rax
__text:0000000000009AD2 48 89 C7 mov rdi, rax ; obj
__text:0000000000009AD5 E8 06 9D 0E 00 call _objc_sync_enter
__text:0000000000009ADA 49 8B 7C 24 18 mov rdi, [r12+18h] ; id
__text:0000000000009ADF 48 8B 35 9A 21 15 00 mov rsi, cs:selRef_count ; SEL
__text:0000000000009AE6 FF 15 D4 26 13 00 call cs:_objc_msgSend_ptr
__text:0000000000009AEC 48 85 C0 test rax, rax
__text:0000000000009AEF 0F 84 60 01 00 00 jz loc_9C55
__text:0000000000009AF5 48 8B 3D 44 2B 15 00 mov rdi, cs:classRef_LICLicenseInfo ; id
__text:0000000000009AFC 49 8B 54 24 18 mov rdx, [r12+18h]
```
opcode
```
55 48 89 E5 41 57 41 56 41 55 41 54 53 50 49 89
FC 48 8B 7F 18 FF 15 01 27 13 00 49 89 C7 48 89
C7 E8 06 9D 0E 00 49 8B 7C 24 18 48 8B 35 9A 21
15 00 FF 15 D4 26 13 00 48 85 C0 0F 84 60 01 00
```
patch
```
48 31 C0 C3
```
after
```
__text:0000000000009AB4 ; int __cdecl -[LICLicenseInfo rawStatus](LICLicenseInfo *self, SEL)
__text:0000000000009AB4 __LICLicenseInfo_rawStatus_ proc near ; DATA XREF: __objc_const:00000000001570C0↓o
__text:0000000000009AB4 48 31 C0 xor rax, rax
__text:0000000000009AB7 C3 retn
__text:0000000000009AB7 __LICLicenseInfo_rawStatus_ endp
```
### arm64
```
__text:00000000000096F4 ; int __cdecl -[LICLicenseInfo rawStatus](LICLicenseInfo *self, SEL)
__text:00000000000096F4 __LICLicenseInfo_rawStatus_ ; DATA XREF: __objc_methlist:00000000000CD6BC↓o
__text:00000000000096F4
__text:00000000000096F4 var_30 = -0x30
__text:00000000000096F4 var_20 = -0x20
__text:00000000000096F4 var_10 = -0x10
__text:00000000000096F4 var_s0 = 0
__text:00000000000096F4
__text:00000000000096F4 F8 5F BC A9 STP X24, X23, [SP,#-0x10+var_30]!
__text:00000000000096F8 F6 57 01 A9 STP X22, X21, [SP,#0x30+var_20]
__text:00000000000096FC F4 4F 02 A9 STP X20, X19, [SP,#0x30+var_10]
__text:0000000000009700 FD 7B 03 A9 STP X29, X30, [SP,#0x30+var_s0]
__text:0000000000009704 FD C3 00 91 ADD X29, SP, #0x30
__text:0000000000009708 F5 03 00 AA MOV X21, X0
__text:000000000000970C 00 0C 40 F9 LDR X0, [X0,#0x18] ; id
__text:0000000000009710 8E 0C 03 94 BL _objc_retain
__text:0000000000009714 F3 03 00 AA MOV X19, X0
__text:0000000000009718 9E 0C 03 94 BL _objc_sync_enter
__text:000000000000971C A0 0E 40 F9 LDR X0, [X21,#0x18] ; id
__text:0000000000009720 48 08 00 D0 ADRP X8, #selRef_count@PAGE
__text:0000000000009724 01 75 44 F9 LDR X1, [X8,#selRef_count@PAGEOFF] ; SEL
__text:0000000000009728 7F 0C 03 94 BL _objc_msgSend
__text:000000000000972C 80 09 00 B4 CBZ X0, loc_985C
__text:0000000000009730 48 08 00 F0 ADRP X8, #classRef_LICLicenseInfo@PAGE
__text:0000000000009734 00 55 41 F9 LDR X0, [X8,#classRef_LICLicenseInfo@PAGEOFF] ; id
__text:0000000000009738 A2 0E 40 F9 LDR X2, [X21,#0x18]
```
opcode
```
F8 5F BC A9 F6 57 01 A9 F4 4F 02 A9 FD 7B 03 A9
FD C3 00 91 F5 03 00 AA 00 0C 40 F9 8E 0C 03 94
F3 03 00 AA 9E 0C 03 94 A0 0E 40 F9 48 08 00 D0
01 75 44 F9 7F 0C 03 94 80 09 00 B4 48 08 00 F0
```
patch
```
00 00 80 D2 C0 03 5F D6
```
after
```
__text:00000000000096F4 ; int __cdecl -[LICLicenseInfo rawStatus](LICLicenseInfo *self, SEL)
__text:00000000000096F4 __LICLicenseInfo_rawStatus_ ; DATA XREF: __objc_methlist:00000000000CD6BC↓o
__text:00000000000096F4 00 00 80 D2 MOV X0, #0
__text:00000000000096F8 C0 03 5F D6 RET
__text:00000000000096F8 ; End of function -[LICLicenseInfo rawStatus]
```

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.automation.apple-events</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.device.camera</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.files.user-selected.read-only</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.automation.apple-events</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.automation.apple-events</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.application-identifier</key>
<string>com.parallels.toolbox.EncryptFiles</string>
<key>keychain-access-groups</key>
<array>
<string>com.parallels.toolbox.EncryptFiles</string>
</array>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.automation.apple-events</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.application-identifier</key>
<string>com.parallels.toolbox</string>
<key>com.apple.security.automation.apple-events</key>
<true/>
<key>com.apple.security.device.audio-input</key>
<true/>
<key>com.apple.security.device.camera</key>
<true/>
<key>keychain-access-groups</key>
<array>
<string>com.parallels.toolbox</string>
</array>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.files.user-selected.read-only</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.device.camera</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.device.audio-input</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.device.audio-input</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.device.audio-input</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.device.audio-input</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.device.camera</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.device.audio-input</key>
<true/>
<key>com.apple.security.device.camera</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.files.user-selected.read-only</key>
<true/>
</dict>
</plist>

24
readme.md Normal file
View File

@ -0,0 +1,24 @@
# Parallels Toolbox for Mac Crack
Crack for Parallels Toolbox for Mac 6.0.0 4536
- [x] Support Intel
- [x] Support Apple Silicon (M1 & M2)
# Install
Go to releases page download and install.
# FAQ
## Is this crack safe?
It's opensource, you can use any hex file comparison tool you like to see what has been modified.
## I want to crack it myself.
Check the crack folder to see how I cracked it.
## Where to get update?
[https://icrack.day/ptfm](https://icrack.day/ptfm)

33
scripts/extra_entitlements.sh Executable file
View File

@ -0,0 +1,33 @@
#!/bin/bash
CUR_PATH=$(
cd $(dirname "$0");
pwd
)
ROOT_PATH=$(
cd "${CUR_PATH}/../";
pwd
)
function export_entitlements() {
codesign -d --entitlements - --xml "$1" 2>/dev/null | plutil -convert xml1 -o - - > "$2"
/usr/libexec/PlistBuddy -c "Delete :com.apple.security.application-groups" "$2" 2>/dev/null
/usr/libexec/PlistBuddy -c "Delete :com.apple.developer.team-identifier" "$2" 2>/dev/null
sed -i "" "s/4C6364ACXT\.//g" "$2"
}
function export_application_entitlements() {
oldIFS=$IFS
IFS=$'\n'
for name in $(ls "/Volumes/Parallels Toolbox/Install Parallels Toolbox.app/Contents/Applications/")
do
export_entitlements "/Volumes/Parallels Toolbox/Install Parallels Toolbox.app/Contents/Applications/${name}" "${ROOT_PATH}/entitlements/${name}.entitlements"
done
IFS=oldIFS
}
mkdir -p "${ROOT_PATH}/entitlements"
export_application_entitlements
export_entitlements "/Volumes/Parallels Toolbox/Install Parallels Toolbox.app/Contents/Library/Install/ToolboxInstaller" "${ROOT_PATH}/entitlements/ToolboxInstaller.entitlements"
export_entitlements "/Volumes/Parallels Toolbox/Install Parallels Toolbox.app" "${ROOT_PATH}/entitlements/Install Parallels Toolbox.app.entitlements"

130
scripts/publish.sh Executable file
View File

@ -0,0 +1,130 @@
#!/bin/bash
CUR_PATH=$(
cd $(dirname "$0");
pwd
)
ROOT_PATH=$(
cd "${CUR_PATH}/../";
pwd
)
TEMP_PATH="${ROOT_PATH}/tmp"
PUBLISH_PATH="${ROOT_PATH}/publish"
PTFM_VERSION="6.0.0-4536"
PTFM_SHA256SUM="491d3739422988fda6934b4fc4dc1334b6dfea86802da56d55a6ea56dadb4910"
PTFM_DMG_DOWNLOAD_URL="https://download.parallels.com/toolbox/v6/${PTFM_VERSION}/ParallelsToolbox-${PTFM_VERSION}.dmg"
PTFM_DMG_FILE="${TEMP_PATH}/download/ParallelsToolbox-${PTFM_VERSION}.dmg"
PTFM_PUBLISH_FILE="${PUBLISH_PATH}/ParallelsToolbox-${PTFM_VERSION}_Crack.dmg"
# CODESIGN_CERT=73B34EBEE504D5CEE35B113A22CEBFD381A21033
CODESIGN_CERT=-
PTFM_TMP_DIR="${TEMP_PATH}/ptfm_files"
function sign_cmd() {
NAME=$(basename $1)
if [ -f "${ROOT_PATH}/entitlements/${NAME}.entitlements" ]; then
codesign -f -s "${CODESIGN_CERT}" --timestamp=none --all-architectures --deep \
--entitlements "${ROOT_PATH}/entitlements/${NAME}.entitlements" \
"$1"
else
codesign -f -s "${CODESIGN_CERT}" --timestamp=none --all-architectures --deep "$1"
fi
}
function ensure_download_ptfm_dmg() {
if [ -f "${PTFM_DMG_FILE}" ]; then
echo "[*] Check hash for \"${PTFM_DMG_FILE}\""
FILE_HASH=$(shasum -a 256 -b "${PTFM_DMG_FILE}" | awk '{print $1}')
if [ ${FILE_HASH} != ${PTFM_SHA256SUM} ]; then
echo "[-] ${FILE_HASH} != ${PTFM_SHA256SUM}"
echo "[*] Delete \"${PTFM_DMG_FILE}\""
rm -f "${PTFM_DMG_FILE}"
fi
fi
if [ ! -f "${PTFM_DMG_FILE}" ]; then
echo "[*] Download ${PTFM_DMG_DOWNLOAD_URL}"
mkdir -p $(dirname "${PTFM_DMG_FILE}")
curl -L --progress-bar -o "${PTFM_DMG_FILE}" "${PTFM_DMG_DOWNLOAD_URL}"
fi
}
function copy_ptfm_files() {
echo "[*] Copy files"
if [ -d "${PTFM_TMP_DIR}" ]; then
rm -rf "${PTFM_TMP_DIR}" > /dev/null
fi
mkdir -p "${PTFM_TMP_DIR}" > /dev/null
hdiutil attach -noverify -noautofsck -noautoopen "${PTFM_DMG_FILE}"
cp -R -X "/Volumes/Parallels Toolbox/Install Parallels Toolbox.app" "${PTFM_TMP_DIR}/" > /dev/null
hdiutil detach "/Volumes/Parallels Toolbox"
rm -f "${PTFM_TMP_DIR}/Install Parallels Toolbox.app/Contents/embedded.provisionprofile" > /dev/null
chflags -R 0 "${PTFM_TMP_DIR}" > /dev/null
xattr -cr "${PTFM_TMP_DIR}" > /dev/null
}
function apply_ptfm_crack() {
echo "[*] Apply patch"
SRC="${ROOT_PATH}/crack/LicenseServices"
DST="${PTFM_TMP_DIR}/Install Parallels Toolbox.app/Contents/Frameworks/LicenseServices.framework/Versions/A/LicenseServices"
cp -f "${SRC}" "${DST}" > /dev/null
chflags -R 0 "${DST}"
chmod 755 "${DST}"
}
function sign_ptfm_application() {
oldIFS=$IFS
IFS=$'\n'
for name in $(ls "${PTFM_TMP_DIR}/Install Parallels Toolbox.app/Contents/Applications/")
do
sign_cmd "${PTFM_TMP_DIR}/Install Parallels Toolbox.app/Contents/Applications/${name}"
done
IFS=oldIFS
}
function sign_ptfm() {
echo "[*] Sign Parallels Toolbox App"
sign_ptfm_application
sign_cmd "${PTFM_TMP_DIR}/Install Parallels Toolbox.app/Contents/Library/Install/ToolboxInstaller"
sign_cmd "${PTFM_TMP_DIR}/Install Parallels Toolbox.app"
}
function create_ptfm_dmg() {
echo "[*] Create dmg ${PTFM_PUBLISH_FILE}"
mkdir -p "${PUBLISH_PATH}"
if [ -f "${PTFM_PUBLISH_FILE}" ]; then
rm -f "${PTFM_PUBLISH_FILE}" > /dev/null
fi
create-dmg \
--volname "Parallels Toolbox" \
--volicon "${ROOT_PATH}/assets/PTFM.VolumeIcon.icns" \
--background "${ROOT_PATH}/assets/PTFM.background.png" \
--window-pos 0 0 \
--window-size 640 415 \
--icon-size 256 \
--icon "Install Parallels Toolbox.app" 450 126 \
--codesign "${CODESIGN_CERT}" \
"${PTFM_PUBLISH_FILE}" \
"${PTFM_TMP_DIR}/"
}
function publish_ptfm_crack_dmg() {
ensure_download_ptfm_dmg
copy_ptfm_files
apply_ptfm_crack
sign_ptfm
create_ptfm_dmg
}
publish_ptfm_crack_dmg