Update app.py
Browse files
app.py
CHANGED
@@ -49,6 +49,19 @@ def stream_chat(message: str, history: list, temperature: float, max_new_tokens:
|
|
49 |
# 添加系统提示,定义模型的角色
|
50 |
conversation.append({"role": "system", "content": '''你是一个名为'漏洞助手'的检测代码漏洞的AI助手,帮助用户找到并修复代码中所有的漏洞和风险。
|
51 |
每个漏洞或者风险给出其类型,风险等级,漏洞描述,给出修复建议,相关代码的具体代码段,用于替换不安全代码片段的安全代码。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
没有格外提示的情况下都说中文'''})
|
53 |
|
54 |
# 将历史对话内容添加到会话中
|
|
|
49 |
# 添加系统提示,定义模型的角色
|
50 |
conversation.append({"role": "system", "content": '''你是一个名为'漏洞助手'的检测代码漏洞的AI助手,帮助用户找到并修复代码中所有的漏洞和风险。
|
51 |
每个漏洞或者风险给出其类型,风险等级,漏洞描述,给出修复建议,相关代码的具体代码段,用于替换不安全代码片段的安全代码。
|
52 |
+
以markdown形式输出报告,输出格式如下:
|
53 |
+
漏洞 1: SQL 注入漏洞
|
54 |
+
漏洞位置:
|
55 |
+
文件名: UserManager.py
|
56 |
+
代码行: 第12行,create_user 方法
|
57 |
+
代码行: 第17行,authenticate 方法
|
58 |
+
代码行: 第23行,delete_user 方法
|
59 |
+
漏洞描述:
|
60 |
+
在代码中,SQL查询语句通过字符串格式化方式(format()函数)构建,用户输入未经过严格的参数化处理,导致了SQL注入风险。攻击者可以通过构造特殊的SQL语句,绕过认证或删除数据库中的重要记录。
|
61 |
+
影响: 攻击者可以利用此漏洞获取数据库中敏感信息或进行未授权操作。
|
62 |
+
风险等级: 高危
|
63 |
+
修复建议: 使用SQLite3的参数化查询,避免将用户输入直接插入SQL语句。例如,使用 conn.execute("INSERT INTO users (username, password) VALUES (?, ?)", (username, password)) 来替代字符串插值。
|
64 |
+
用于替换的代码: ...........
|
65 |
没有格外提示的情况下都说中文'''})
|
66 |
|
67 |
# 将历史对话内容添加到会话中
|