TypeScript 安全分析框架
Deepsec 安全漏洞检测
基于符号执行和模糊测试的自动化安全分析平台,深度检测 TypeScript/JavaScript 应用中的潜在漏洞,包括 SQL 注入、XSS、命令执行等高危安全问题。
漏洞检测
数据流分析
模糊测试
静态分析
75
安全评分
扫描状态
待启动
代码覆盖率
0%
漏洞检测进度
0/0
符号执行路径
0
0
已扫描文件
0
分析代码行
漏洞分布
严重 (Critical)
0
高危 (High)
0
中危 (Medium)
0
低危 (Low)
0
总漏洞数
0
检测活动
实时等待扫描启动...
--:--:--
存在漏洞的代码
user-service.tsimport { db } from '../db/connection'; import { exec } from 'child_process'; // 用户查询服务 - 存在SQL注入漏洞 export class UserService { async findUserByName(username: string): Promise<any> { // ❌ 危险: 直接拼接SQL语句 const query = `SELECT * FROM users WHERE name = '${username}'`; return db.query(query); } async exportData(format: string): Promise<void> { // ❌ 危险: 命令注入漏洞 const cmd = `python export.py --format ${format}`; exec(cmd, (err, stdout) => { console.log(stdout); }); } renderProfile(userInput: string): string { // ❌ 危险: XSS漏洞 return `<div class="profile">${userInput}</div>`; } }
修复后的代码
已修复import { db } from '../db/connection'; import { execFile } from 'child_process'; import DOMPurify from 'dompurify'; // 用户查询服务 - 已修复安全漏洞 export class UserService { async findUserByName(username: string): Promise<any> { // ✅ 安全: 使用参数化查询 const query = 'SELECT * FROM users WHERE name = ?'; return db.query(query, [username]); } async exportData(format: string): Promise<void> { // ✅ 安全: 使用白名单和execFile const allowedFormats = ['json', 'csv', 'xml']; if (!allowedFormats.includes(format)) { throw new Error('Invalid format'); } execFile('python', ['export.py', '--format', format]); } renderProfile(userInput: string): string { // ✅ 安全: 输入净化和转义 const clean = DOMPurify.sanitize(userInput); return `<div class="profile">${clean}</div>`; } }
SQL 注入 (CWE-89)
用户输入直接拼接到 SQL 查询中,攻击者可通过构造恶意输入操纵数据库查询,导致数据泄露或篡改。
CVSS 9.8
严重
命令注入 (CWE-78)
未验证的用户输入传递给系统命令执行函数,攻击者可执行任意系统命令,完全控制服务器。
CVSS 9.3
高危
XSS 攻击 (CWE-79)
用户输入未经过滤直接输出到 HTML 页面,攻击者可注入恶意脚本窃取用户会话或执行钓鱼攻击。
CVSS 6.8
中危
$ deepsec analyze --target ./src --depth deep
Deepsec Security Analyzer v2.4.1
Loading configuration from deepsec.config.js...
TypeScript compiler options loaded.
等待扫描启动...