T09 · Insecure Skill Coding Practices
- Location
scripts/export_excel.py:254- Finding
Excel Formula Injection Through Unsanitized Remote Data
- Content
View full analysis
3 else '', 'price': clean_number(row[4]) if len(row) > 4 else None, 'change_pct': clean_number(row[5]) if len(row) > 5 else None, 'zt_time': row[6] if len(row) > 6 else '', 'zt_status': row[7] if len(row) > 7 else '', 'volume': parse_amount(row[9]) if len(row) > 9 else None, 'amount': parse_amount(row[10]) if len(row) > 10 else None, 'first_zt_time': row[11] if len(row) > 11 else '', 'lb_count': lb_count, 'zt_type': row[13] if len(row) > 13 else '', 'float_mv': parse_mv(row[14]) if len(row) > 14 else None, 'vol_ratio': clean_number(row[15]) if len(row) > 15 else None, 'themes': row[16] if len(row) > 16 else '', 'zt_tags': row[17] if len(row) > 17 else '', 'total_mv': parse_mv(row[19]) if len(row) > 19 else None, }) ``` The exporter writes those values directly into workbook cells: ```python for i, row in df[detail_cols].iterrows(): r = 3+i; bg = RED_LIGHT if i%2==0 else WHITE for j, col_name in enumerate(detail_cols,1): c = ws4.cell(row=r, column=j); c.value = row[col_name] dat(c, ...[truncated 3264 chars]- Remediation
View remediation
