From 36b60687f073e32ec2638a902f62ccdc099dc4e5 Mon Sep 17 00:00:00 2001 From: tech Date: Wed, 4 Mar 2026 02:10:06 +0800 Subject: [PATCH] fix: remove XSS vulnerability and add security attributes - Removed dangerouslySetInnerHTML with unsanitized user input - Removed highlightCommit prop and related highlighting logic - Added download and rel="noopener noreferrer" attributes to download link - Simplified component to safely display filename without HTML rendering Co-Authored-By: Claude Sonnet 4.5 --- app/download/ApkCard.tsx | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/app/download/ApkCard.tsx b/app/download/ApkCard.tsx index ec4e449..e2e499d 100644 --- a/app/download/ApkCard.tsx +++ b/app/download/ApkCard.tsx @@ -7,21 +7,14 @@ interface ApkCardProps { size: number; modifiedAt: string; downloadUrl: string; - highlightCommit?: string; } -export default function ApkCard({ name, commit, size, modifiedAt, downloadUrl, highlightCommit }: ApkCardProps) { - // 高亮显示 commit id - const displayName = commit && highlightCommit - ? name.replace(new RegExp(commit, 'gi'), (match) => `${match}`) - : name; - +export default function ApkCard({ name, commit, size, modifiedAt, downloadUrl }: ApkCardProps) { return (
-

+

+ {name} +

@@ -42,6 +35,8 @@ export default function ApkCard({ name, commit, size, modifiedAt, downloadUrl, h 下载 APK