2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

如何使用 Amazon Q 免费进行代码安全检查

  • 2023-08-24
    北京
  • 本文字数:1414 字

    阅读完需:约 5 分钟

如何使用 Amazon Q 免费进行代码安全检查

活动推荐: #生成式 AI 先锋开发者集结令 #

免费体验编程神器,丰厚大奖等你来拿!👉🏻👉🏻https://jinshuju.net/f/rVuKYa


CodeWhisperer 是 Amazon 发布的一款免费的 AI 编程辅助小工具,在辅助程序员编程的同时,还具备代码安全审计的功能。可以快速扫描 Java、JavaScript 和 Python 项目中难以发现的漏洞,并获取代码建议以立即修复这些漏洞。遵循跟踪安全漏洞的最佳实践,例如开放全球应用程序安全项目 (OWASP) 概述的漏洞,或者不符合加密库最佳实践及其他类似安全最佳实践的漏洞。今天小试牛刀,试验一下 CodeWhisperer 的代码安全检查能力,成功识别出 Python 代码中可能存在的系统命令注入漏洞、SQL 注入漏洞、MD5 碰撞漏洞以及反序列化漏洞,666 ~

系统命令注入漏洞


以下是一段有安全漏洞的 Python 代码:

import os
filename = input("请输入文件名:")os.system("rm " + filename)
复制代码


这段代码的作用是删除用户输入的文件名对应的文件,但存在安全漏洞。其中的漏洞是,用户可以通过输入特殊字符来执行任意系统命令,而不仅仅是删除文件。例如,如果用户输入的是 ;ls,则会先删除指定文件,然后执行 ls 命令。这可能导致系统被攻击者接管或者数据被窃取,因此这段代码需要进行安全性改进。



Amazon CodeWhisperer 成功检测出:系统命令注入漏洞。


SQL 注入漏洞


以下是一个有安全漏洞的 Python 代码:


import sqlite3
conn = sqlite3.connect('example.db')c = conn.cursor()
c.execute('''CREATE TABLE stocks (date text, trans text, symbol text, qty real, price real)''')
date = input("请输入日期:")trans = input("请输入交易类型:")symbol = input("请输入股票代码:")qty = input("请输入数量:")price = input("请输入价格:")
c.execute(f"INSERT INTO stocks VALUES ('{date}', '{trans}', '{symbol}', {qty}, {price})")
conn.commit()conn.close()
复制代码


这段代码的作用是向 SQLite 数据库中插入一条记录,但存在安全漏洞。其中的漏洞是,用户输入的数据没有进行任何过滤或转义,从而可能导致 SQL 注入攻击。例如,如果用户输入的 symbol 参数是 ABC'); DROP TABLE stocks; --,则会删除 stocks 表。这可能导致数据丢失或系统崩溃,因此这段代码需要进行安全性改进。



Amazon CodeWhisperer 成功检测出:SQL 注入漏洞。

MD5 碰撞漏洞


以下是一个有安全漏洞的 Python 代码:


import hashlib
password = input("请输入密码:")
hash = hashlib.md5(password.encode('utf-8')).hexdigest()
print(f"您的密码的 MD5 值为:{hash}")
复制代码


这段代码的作用是计算用户输入的密码的 MD5 值,并输出结果。但存在安全漏洞。其中的漏洞是,MD5 算法已经被证明不再安全,可以被暴力破解或碰撞攻击。因此,如果攻击者获得了用户的 MD5 值,就可以使用彩虹表等方法轻松地破解密码。这可能导致用户账户被攻击者接管或者数据被窃取,因此这段代码需要进行安全性改进。



Amazon CodeWhisperer 成功检测出:MD5 碰撞漏洞

反序列化漏洞


以下是一个有安全漏洞的 Python 代码:


import pickle
serialized_data = input("请输入序列化数据:")data = pickle.loads(serialized_data)# 使用反序列化后的数据...
复制代码


这段代码的作用是对输入序列化数据,进行反序列化。但存在安全漏洞,其中的漏洞是没有对输入进行验证和过滤,直接进行反序列化操作可能导致恶意对象的执行,从而导致远程代码执行或数据泄露。



Amazon CodeWhisperer 成功检测出:反序列化漏洞。


2023-08-24 10:395408

评论

发布
暂无评论
发现更多内容

电商评论数据自动化采集的六大核心策略(附避坑手册)

代码忍者

淘宝API接口

VMware Aria Operations 8.18.3 - 多云 IT 运维管理

sysin

aria

自增主键去哪了?---一次开发过程中的思考

京东科技开发者

HarmonyOS:ComposeTitleBar 组件自学指南

李游Leo

鸿蒙

VMware Aria Operations for Logs 8.18.3 - 集中式日志管理

sysin

aria

智能制造:MES系统架构设计

积木链小链

数字化转型 制造业 智能制造

区块链项目的开发框架及特点

北京木奇移动技术有限公司

区块链技术 软件外包公司 web3开发

APP开发框架及其特点

北京木奇移动技术有限公司

APP开发 软件外包公司 APP外包公司

什么是IP地址子网划分,是如何应用的?

郑州埃文科技

IP地址

京东图片搜索拍立淘API接口 (JD.item_search_img)

tbapi

京东API 京东图片搜索接口 京东拍立淘接口

高效定位 Go 应用问题:Go 可观测性功能深度解析

阿里巴巴云原生

阿里云 云原生

互联网的“神经中枢”域名根服务器是如何演变的?

郑州埃文科技

根服务器

数据要素对企业营销会有什么影响?

郑州埃文科技

【转载】golang内存分配

京东科技开发者

业务复杂度治理方法论--十年系统设计经验总结

京东科技开发者

文档智能扫描,提升无纸化办公效率

HarmonyOS SDK

合合信息IntFinQ知识库体验:大模型加速器2.0,助力企业走向文档智能化

Damon小智

工作流 OCR AI‘’ DeepSeek coze

《币圈不设防》第五期:市场热点、交易所生态与合约争议深度探讨

TechubNews

Gitea Enterprise 23.6.0 (Linux, macOS, Windows) - 本地部署的企业级 Git 服务

sysin

git

WebGL开发框架及其特点

北京木奇移动技术有限公司

软件外包公司 webgl开发 3D软件开发

WebSocket调试神器对决:Apipost凭何碾压Apifox?

数据追梦人

2025南京软博会

AIOTE智博会

VMware Aria Automation 8.18.1 - 多云基础架构自动化平台

sysin

aria

VMware ESXi 8.0U3d macOS Unlocker & OEM BIOS Dell (戴尔) 定制版

sysin

esxi

AI英语背单词APP开发

北京木奇移动技术有限公司

软件外包公司 AI口语练习 AI英语学习

有关IP地址运算

郑州埃文科技

IP地址

数据要素市场化 驱动数字金融

郑州埃文科技

数据要素

智能制造新引擎:铜丝生产行业MES系统核心功能

万界星空科技

制造业 mes 铜加工 铜拉丝生产 铜丝mes

Shopify电商平台API接口对接及上线

北京木奇移动技术有限公司

跨境电商 软件外包公司 shopify开发

知识图谱与多模态推理在测试开发中的实践价值‌

测试人

人工智能

如何使用 Amazon Q 免费进行代码安全检查_亚马逊云科技_顾涛_InfoQ精选文章