mirror of
https://git-qiuchenly.yltfspace.com/QiuChenly/corepatch
synced 2025-11-25 10:08:20 +08:00
删除侵权PD和Xmind相关文件。
This commit is contained in:
7
.gitignore
vendored
7
.gitignore
vendored
@@ -5,4 +5,9 @@
|
||||
.ruby-lsp
|
||||
IACPLHttpTransferClient
|
||||
tool/DIffPatchCode.py
|
||||
tool/GiftGot.py
|
||||
tool/GiftGot.py
|
||||
config_pd.json
|
||||
tool/pd*.sh
|
||||
tool/ParallelsDesktop
|
||||
tool/没脑子和不高兴
|
||||
tool/Parallels_原始人_起洞.command
|
||||
21
config.json
21
config.json
@@ -186,27 +186,6 @@
|
||||
"Accessibility"
|
||||
]
|
||||
},
|
||||
{
|
||||
"packageName": "com.parallels.desktop.console",
|
||||
"bridgeFile": "/Contents/MacOS/Parallels Service.app/Contents/MacOS/",
|
||||
"injectFile": "prl_disp_service",
|
||||
"extraShell": "pd.sh",
|
||||
"onlysh": true,
|
||||
"supportVersion": [
|
||||
"19.1.0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"packageName": "com.parallels.desktop.console",
|
||||
"bridgeFile": "/Contents/MacOS/Parallels Service.app/Contents/MacOS/",
|
||||
"injectFile": "prl_disp_service",
|
||||
"extraShell": "pd193.sh",
|
||||
"onlysh": true,
|
||||
"supportVersion": [
|
||||
"19.3.1",
|
||||
"19.4.0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"packageName": "com.surteesstudios.Bartender",
|
||||
"needCopyToAppDir": true,
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
# QiuChenly 计算数据差值做特征码算法
|
||||
# 部分网友提供了原始版本 虽然是用的Chatgpt写给我的 但是还是略表谢意
|
||||
# 提供不定长度的多个十六进制汇编代码段 自动求出差值特征码
|
||||
|
||||
data = """
|
||||
|
||||
"""
|
||||
|
||||
data1 = []
|
||||
|
||||
for i in data.split("\n"):
|
||||
if i == "":
|
||||
continue
|
||||
else:
|
||||
data1.append(i)
|
||||
if len(data1) > 1:
|
||||
res = " ".join(
|
||||
[
|
||||
d1 if d1 == d2 else "??"
|
||||
for d1, d2 in zip(data1[0].split(), data1[1].split())
|
||||
]
|
||||
)
|
||||
data1 = [res]
|
||||
|
||||
print(data1[0])
|
||||
@@ -1,14 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<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>com.apple.security.personal-information.addressbook</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,8 +0,0 @@
|
||||
<?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.smartcard</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,14 +0,0 @@
|
||||
<?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.network.server</key>
|
||||
<true/>
|
||||
<key>com.apple.security.hypervisor</key>
|
||||
<true/>
|
||||
<key>com.apple.security.network.client</key>
|
||||
<true/>
|
||||
<key>com.apple.security.device.usb</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1 +0,0 @@
|
||||
{"license":"{\"product_version\":\"19.*\",\"edition\":2,\"platform\":3,\"product\":7,\"offline\":true,\"cpu_limit\":32,\"ram_limit\":131072}"}
|
||||
@@ -1,100 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "${0%/*}" || exit 1
|
||||
read -p "⚙️ 请输入密码(明文)然后回车: " -r passwd
|
||||
printf "\r\033[1A%s" "" 1>&2
|
||||
printf "\r\033[K%s" "" 1>&2
|
||||
echo "${passwd}" | sudo -S echo "⚙️ 当前是 $(sudo -S whoami) 用户"
|
||||
|
||||
if [[ -n "$1" ]]; then
|
||||
file="/etc/hosts"
|
||||
lines=(
|
||||
"127.0.0.1 download.parallels.com"
|
||||
"127.0.0.1 update.parallels.com"
|
||||
"127.0.0.1 desktop.parallels.com"
|
||||
"127.0.0.1 download.parallels.com.cdn.cloudflare.net"
|
||||
"127.0.0.1 update.parallels.com.cdn.cloudflare.net"
|
||||
"127.0.0.1 desktop.parallels.com.cdn.cloudflare.net"
|
||||
"127.0.0.1 www.parallels.cn"
|
||||
"127.0.0.1 www.parallels.com"
|
||||
"127.0.0.1 www.parallels.de"
|
||||
"127.0.0.1 www.parallels.es"
|
||||
"127.0.0.1 www.parallels.fr"
|
||||
"127.0.0.1 www.parallels.nl"
|
||||
"127.0.0.1 www.parallels.pt"
|
||||
"127.0.0.1 www.parallels.ru"
|
||||
"127.0.0.1 www.parallelskorea.com"
|
||||
"127.0.0.1 reportus.parallels.com"
|
||||
"127.0.0.1 parallels.cn"
|
||||
"127.0.0.1 parallels.com"
|
||||
"127.0.0.1 parallels.de"
|
||||
"127.0.0.1 parallels.es"
|
||||
"127.0.0.1 parallels.fr"
|
||||
"127.0.0.1 parallels.nl"
|
||||
"127.0.0.1 parallels.pt"
|
||||
"127.0.0.1 parallels.ru"
|
||||
"127.0.0.1 parallelskorea.com"
|
||||
"127.0.0.1 pax-manager.myparallels.com"
|
||||
"127.0.0.1 myparallels.com"
|
||||
"127.0.0.1 my.parallels.com"
|
||||
"# 127.0.0.1 download.parallels.com"
|
||||
"# 127.0.0.1 update.parallels.com"
|
||||
"# 127.0.0.1 desktop.parallels.com"
|
||||
"# 127.0.0.1 download.parallels.com.cdn.cloudflare.net"
|
||||
"# 127.0.0.1 update.parallels.com.cdn.cloudflare.net"
|
||||
"# 127.0.0.1 desktop.parallels.com.cdn.cloudflare.net"
|
||||
"# 127.0.0.1 www.parallels.com"
|
||||
"# 127.0.0.1 reportus.parallels.com"
|
||||
"# 127.0.0.1 parallels.com"
|
||||
"# 127.0.0.1 my.parallels.com"
|
||||
)
|
||||
if [[ "$1" == "add" ]]; then
|
||||
if [[ "$(sudo -S awk 'END {print}' "${file}")" != "" ]]; then
|
||||
sudo -S tee -a "${file}" >/dev/null <<-EOF
|
||||
|
||||
EOF
|
||||
fi
|
||||
# 循环检查和添加行
|
||||
for line in "${lines[@]}"; do
|
||||
if ! sudo -S grep -q "^${line}" "${file}"; then
|
||||
sudo -S tee -a "${file}" >/dev/null <<-EOF
|
||||
${line}
|
||||
EOF
|
||||
fi
|
||||
done
|
||||
echo "⚙️ 已屏蔽 Parallels Desktop."
|
||||
exit 0
|
||||
elif [[ "$1" == "del" ]]; then
|
||||
# 循环检查和删除行
|
||||
for line in "${lines[@]}"; do
|
||||
if sudo -S grep -q "^${line}" "${file}"; then
|
||||
sudo -S sed -i "" "/^${line}/d" "${file}"
|
||||
fi
|
||||
done
|
||||
echo "⚙️ 已取消屏蔽 Parallels Desktop."
|
||||
exit 0
|
||||
else
|
||||
echo "⚙️ 参数错误: add / del"
|
||||
fi
|
||||
fi
|
||||
|
||||
PDFM_DIR="/Applications/Parallels Desktop.app"
|
||||
PDFM_DISP_DST="${PDFM_DIR}/Contents/MacOS/Parallels Service.app/Contents/MacOS/prl_disp_service"
|
||||
PDFM_DISP_PATCH="${PDFM_DISP_DST}_patched"
|
||||
PDFM_DISP_BCUP="${PDFM_DISP_DST}_backup"
|
||||
|
||||
if [ "$(pgrep -x prl_disp_service)" != "" ] && [ "$(pgrep -x prl_client_app)" != "" ]; then
|
||||
open "${PDFM_DIR}"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ ! -e "${PDFM_DISP_PATCH}" ]; then
|
||||
sudo -S cp -f "${PDFM_DISP_DST}" "${PDFM_DISP_PATCH}"
|
||||
fi
|
||||
|
||||
sudo -S cp -f "${PDFM_DISP_PATCH}" "${PDFM_DISP_DST}"
|
||||
open "${PDFM_DIR}"
|
||||
|
||||
sleep 2
|
||||
|
||||
sudo -S cp -f "${PDFM_DISP_BCUP}" "${PDFM_DISP_DST}"
|
||||
102
tool/pd.sh
102
tool/pd.sh
@@ -1,102 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
BASE_PATH=$(
|
||||
cd $(dirname "$0")
|
||||
pwd
|
||||
)
|
||||
|
||||
sudo cp 'tool/91QiuChenly.dylib' '/Applications/Parallels Desktop.app/Contents/MacOS/Parallels Service.app/Contents/MacOS/91QiuChenly.dylib'
|
||||
|
||||
ori="/Applications/Parallels Desktop.app/Contents/MacOS/Parallels Service.app/Contents/MacOS/prl_disp_service"
|
||||
backup="/Applications/Parallels Desktop.app/Contents/MacOS/Parallels Service.app/Contents/MacOS/prl_disp_service_backup"
|
||||
|
||||
# 检查备份是否存在
|
||||
if [ -f "${backup}" ]; then
|
||||
cp "${backup}" "${ori}"
|
||||
fi
|
||||
|
||||
cp -f "${ori}" "${backup}"
|
||||
|
||||
tool/insert_dylib '/Applications/Parallels Desktop.app/Contents/MacOS/Parallels Service.app/Contents/MacOS/91QiuChenly.dylib' "${backup}" "${ori}"
|
||||
|
||||
COLOR_INFO='\033[0;34m'
|
||||
COLOR_ERR='\033[0;35m'
|
||||
NOCOLOR='\033[0m'
|
||||
|
||||
PDFM_DIR="/Applications/Parallels Desktop.app"
|
||||
PDFM_VER="19.1.0-54729"
|
||||
|
||||
PDFM_DISP_DIR="${PDFM_DIR}/Contents/MacOS/Parallels Service.app/Contents/MacOS"
|
||||
PDFM_DISP_DST="${PDFM_DISP_DIR}/prl_disp_service"
|
||||
|
||||
LICENSE_FILE="${BASE_PATH}/licenses.json"
|
||||
LICENSE_DST="/Library/Preferences/Parallels/licenses.json"
|
||||
|
||||
echo "${COLOR_INFO}[*] 确保你的版本是: https://download.parallels.com/desktop/v19/${PDFM_VER}/ParallelsDesktop-${PDFM_VER}.dmg"
|
||||
|
||||
# check parallels desktop version
|
||||
VERSION_1=$(defaults read "${PDFM_DIR}/Contents/Info.plist" CFBundleShortVersionString)
|
||||
VERSION_2=$(defaults read "${PDFM_DIR}/Contents/Info.plist" CFBundleVersion)
|
||||
INSTALL_VER="${VERSION_1}-${VERSION_2}"
|
||||
# if [ "${PDFM_VER}" != "${VERSION_1}-${VERSION_2}" ]; then
|
||||
# echo -e "${COLOR_ERR}[-] This script is for ${PDFM_VER}, but your's is ${INSTALL_VER}.${NOCOLOR}"
|
||||
# exit 2
|
||||
# fi
|
||||
|
||||
echo "${COLOR_INFO}[*] 复制伪造的授权文件 licenses.json${NOCOLOR}"
|
||||
|
||||
# stop prl_disp_service
|
||||
if pgrep -x "prl_disp_service" &> /dev/null; then
|
||||
echo -e "${COLOR_INFO}[*] Stopping Parallels Desktop${NOCOLOR}"
|
||||
pkill -9 prl_client_app &>/dev/null
|
||||
# ensure prl_disp_service has stopped
|
||||
"${PDFM_DIR}/Contents/MacOS/Parallels Service" service_stop &>/dev/null
|
||||
sleep 1
|
||||
launchctl stop /Library/LaunchDaemons/com.parallels.desktop.launchdaemon.plist &>/dev/null
|
||||
sleep 1
|
||||
pkill -9 prl_disp_service &>/dev/null
|
||||
sleep 1
|
||||
rm -f "/var/run/prl_*"
|
||||
fi
|
||||
|
||||
if [ -f "${LICENSE_DST}" ]; then
|
||||
chflags -R 0 "${LICENSE_DST}" || {
|
||||
echo -e "${COLOR_ERR}error $? at line $LINENO.${NOCOLOR}"
|
||||
exit $?
|
||||
}
|
||||
rm -f "${LICENSE_DST}" >/dev/null || {
|
||||
echo -e "${COLOR_ERR}error $? at line $LINENO.${NOCOLOR}"
|
||||
exit $?
|
||||
}
|
||||
fi
|
||||
|
||||
cp -f "${LICENSE_FILE}" "${LICENSE_DST}" || {
|
||||
echo -e "${COLOR_ERR}error $? at line $LINENO.${NOCOLOR}"
|
||||
exit $?
|
||||
}
|
||||
chown root:wheel "${LICENSE_DST}" || {
|
||||
echo -e "${COLOR_ERR}error $? at line $LINENO.${NOCOLOR}"
|
||||
exit $?
|
||||
}
|
||||
chmod 444 "${LICENSE_DST}" || {
|
||||
echo -e "${COLOR_ERR}error $? at line $LINENO.${NOCOLOR}"
|
||||
exit $?
|
||||
}
|
||||
chflags -R 0 "${LICENSE_DST}" || {
|
||||
echo -e "${COLOR_ERR}error $? at line $LINENO.${NOCOLOR}"
|
||||
exit $?
|
||||
}
|
||||
chflags uchg "${LICENSE_DST}" || {
|
||||
echo -e "${COLOR_ERR}error $? at line $LINENO.${NOCOLOR}"
|
||||
exit $?
|
||||
}
|
||||
chflags schg "${LICENSE_DST}" || {
|
||||
echo -e "${COLOR_ERR}error $? at line $LINENO.${NOCOLOR}"
|
||||
exit $?
|
||||
}
|
||||
|
||||
chmod 755 "${PDFM_DISP_DST}"
|
||||
|
||||
cp -f "/Applications/Parallels Desktop.app/Contents/MacOS/Parallels Service.app/Contents/MacOS/prl_disp_service" "/Applications/Parallels Desktop.app/Contents/MacOS/Parallels Service.app/Contents/MacOS/prl_disp_service_patched"
|
||||
|
||||
echo "${COLOR_INFO}[*] 破解完成。${NOCOLOR}"
|
||||
@@ -1,97 +0,0 @@
|
||||
COLOR_INFO='\033[0;34m'
|
||||
COLOR_ERR='\033[0;35m'
|
||||
NOCOLOR='\033[0m'
|
||||
PDFM_VER="19.4.0-54962"
|
||||
|
||||
echo "${COLOR_INFO}[*] 确保你的版本是: https://download.parallels.com/desktop/v19/${PDFM_VER}/ParallelsDesktop-${PDFM_VER}.dmg"
|
||||
|
||||
if pgrep -x "prl_disp_service" &>/dev/null; then
|
||||
echo "${COLOR_INFO}[*] 正在停止 Parallels Desktop 主程序..."
|
||||
pkill -9 prl_client_app &>/dev/null
|
||||
"/Applications/Parallels Desktop.app/Contents/MacOS/Parallels Service" service_stop &>/dev/null
|
||||
sleep 1
|
||||
launchctl stop /Library/LaunchDaemons/com.parallels.desktop.launchdaemon.plist &>/dev/null
|
||||
sleep 1
|
||||
pkill -9 prl_disp_service &>/dev/null
|
||||
sleep 1
|
||||
rm -f "/var/run/prl_*"
|
||||
fi
|
||||
|
||||
sudo cp "./tool/91QiuChenly.dylib" "/Applications/Parallels Desktop.app/Contents/Frameworks/91QiuChenly.dylib"
|
||||
|
||||
para_load="@rpath/91QiuChenly.dylib"
|
||||
pd_dir="/Applications/Parallels Desktop.app"
|
||||
insert_dylib_file="tool/insert_dylib"
|
||||
|
||||
# patch dispatcher
|
||||
pd_dispatcher_file="$pd_dir/Contents/MacOS/Parallels Service.app/Contents/MacOS/prl_disp_service"
|
||||
|
||||
# 判断文件是否存在 如果不存在就备份
|
||||
if [ ! -f "$pd_dispatcher_file"_backup ]; then
|
||||
cp "$pd_dispatcher_file" "$pd_dispatcher_file"_backup
|
||||
fi
|
||||
cp "$pd_dispatcher_file"_backup "$pd_dispatcher_file"
|
||||
|
||||
"$insert_dylib_file" "$para_load" "$pd_dispatcher_file"_backup "$pd_dispatcher_file"
|
||||
codesign -f -s - --timestamp=none --all-architectures --entitlements "./tool/ParallelsDesktop/Service.entitlements" "$pd_dispatcher_file"
|
||||
|
||||
# patch vm
|
||||
pd_vm_file="$pd_dir/Contents/MacOS/Parallels VM.app/Contents/MacOS/prl_vm_app"
|
||||
|
||||
if [ ! -f "$pd_vm_file"_backup ]; then
|
||||
cp "$pd_vm_file" "$pd_vm_file"_backup
|
||||
fi
|
||||
cp "$pd_vm_file"_backup "$pd_vm_file"
|
||||
|
||||
"$insert_dylib_file" "$para_load" "$pd_vm_file"_backup "$pd_vm_file"
|
||||
codesign -f -s - --timestamp=none --all-architectures --entitlements "./tool/ParallelsDesktop/VM.entitlements" "$pd_vm_file"
|
||||
|
||||
# patch console
|
||||
pd_console_file="$pd_dir/Contents/MacOS/prl_client_app"
|
||||
|
||||
if [ ! -f "$pd_console_file"_backup ]; then
|
||||
cp "$pd_console_file" "$pd_console_file"_backup
|
||||
fi
|
||||
cp "$pd_console_file"_backup "$pd_console_file"
|
||||
|
||||
"$insert_dylib_file" "$para_load" "$pd_console_file"_backup "$pd_console_file"
|
||||
codesign -f -s - --timestamp=none --all-architectures --entitlements "./tool/ParallelsDesktop/Console.entitlements" "$pd_console_file"
|
||||
|
||||
# install fake license
|
||||
license_file_dst="/Library/Preferences/Parallels/licenses.json"
|
||||
|
||||
if [ -f "$license_file_dst" ]; then
|
||||
chflags -R 0 "$license_file_dst"
|
||||
rm -f "$license_file_dst" > /dev/null
|
||||
fi
|
||||
|
||||
cp "./tool/ParallelsDesktop/licenses.json" "$license_file_dst"
|
||||
chown root:wheel "$license_file_dst"
|
||||
chmod 444 "$license_file_dst"
|
||||
chflags -R 0 "$license_file_dst"
|
||||
chflags uchg "$license_file_dst"
|
||||
chflags schg "$license_file_dst"
|
||||
|
||||
# start prl_disp_service
|
||||
if ! pgrep -x "prl_disp_service" &>/dev/null; then
|
||||
echo "${COLOR_INFO}[*] 正在启动 Parallels Service ..."
|
||||
"$pd_dir/Contents/MacOS/Parallels Service" service_restart &>/dev/null
|
||||
for (( i=0; i < 10; ++i ))
|
||||
do
|
||||
if pgrep -x "prl_disp_service" &>/dev/null; then
|
||||
break
|
||||
fi
|
||||
sleep 1
|
||||
done
|
||||
if ! pgrep -x "prl_disp_service" &>/dev/null; then
|
||||
echo -e "${COLOR_ERR}[x] 启动 Service 失败."
|
||||
fi
|
||||
fi
|
||||
|
||||
# configure parallels
|
||||
"$pd_dir/Contents/MacOS/prlsrvctl" web-portal signout &>/dev/null
|
||||
"$pd_dir/Contents/MacOS/prlsrvctl" set --cep off &>/dev/null
|
||||
"$pd_dir/Contents/MacOS/prlsrvctl" set --allow-attach-screenshots off &>/dev/null
|
||||
|
||||
# 需要管理员权限启动PD才会正常访问网络
|
||||
# (echo "you_pass_word" | sudo -S -b /Applications/Parallels\ Desktop.app/Contents/MacOS/prl_client_app &)
|
||||
@@ -1,11 +0,0 @@
|
||||
{
|
||||
"region": "cn",
|
||||
"user": "QiuChenly@outlook.com",
|
||||
"token": "NMSLTOKEN",
|
||||
"uid": "QiuChenly@outlook.com",
|
||||
"primaryEmail": "QiuChenly@outlook.com",
|
||||
"fullname": "QiuChenly@outlook.com",
|
||||
"phone": "18888888888",
|
||||
"rawSubscriptionData": "TiT1ul64lE+EMrH0ogOPWHZw5r3sE+jU1l2smjmRuvxmqN3v0NPklgJI9ZpGBt3MZ/mRXM+KmmlZy/bXopy74SH7VLeg3Y1aCATUoWsY2O0XXy1I0JtvLsIF+uM6G2oOx8F6f5Wz+Embhg6b9SIF19MBckmXOOfahd0zWJDaxzpAYthagLgakhbG8k7ynXrUmGIaVmxcktxg3hnRgxlwKvJfM56x5lxF+eLY/t4EFBKfk++omYQExwflUwTrwdeP4kbQvNTMGi9v5Nmyg8Nq7w47sfc1zfeg5opDhW47JTzu29EveGXXAxgV88pjQDZMWjL5c+v4PprDSzF+KJGSfA==",
|
||||
"openActivateDialogDate": "2024-05-21T06:03:07.806Z"
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
# 有一个不能说名字的伏地魔公司,使用这个数据可以绕过登录,只需要替换公钥并引入hook.js即可。
|
||||
USER=$(whoami)
|
||||
|
||||
cp account.json "/Users/$USER/Library/Application Support/Xmind/Electron v3/vana/state/account.json"
|
||||
Reference in New Issue
Block a user