T09 · Insecure Skill Coding Practices
- Location
scripts/build_report.py:76- Finding
Unescaped Report Data Is Rendered by Chrome with Browser Sandboxing Disabled
- Content
View full analysis
{title} body {{ font-family: "Noto Sans CJK SC", "Microsoft YaHei", Arial, sans-serif; margin: 24px; color: #222; }} table {{ width: 100%; border-collapse: collapse; table-layout: fixed; margin: 12px 0 24px; font-size: 12px; }} th, td {{ border: 1px solid #999; padding: 6px 8px; vertical-align: top; word-break: break-word; }} th {{ background: #f3f3f3; }} @page {{ size: A4 landscape; margin: 12mm; }}{title}
{note}
- 组合总数:{output['comboCount']}
- 成功纳入统计:{output['successComboCount']}
- 失败组合数:{output['failureCount']}
- 去重后股票数:{output['uniqueStockCount']}
'.join( f'{c["combo_name"]}({c["combo_symbol"]},{c["weight"]}%)' for c in sorted(item['combos'], key=lambda x: (-x['weight'], x['combo_symbol'])) ) parts.append(f'') parts.append('
') return '\n'.join(parts) def maybe_render_pdf(html_path: Path, pdf_path: Path): chrome = shutil.which('google-chrome-stable') or shutil.which('google-chrome') or shutil.which('chromium') or shutil.which('chromium-browser') if not chrome: return False, ...[truncated 3615 chars]排名 股票名称 股票代码 被持仓组合数量 合计持仓比例 所在组合及持仓比例 {i} {item["stock_name"]} {item["stock_symbol"]} {item["combo_count"]} {item["total_weight"]:.2f}% {combos_html} - Remediation
View remediation
