当前位置: 首页 > news >正文

违规网站开发 开发者如何规避风险上海企业网络专线

违规网站开发 开发者如何规避风险,上海企业网络专线,网站做收录要多少长时间,网站开发大全学习笔记:防止SQL注入、XSS攻击和文件上传漏洞(Python3) 本笔记由生成式大模型GPT-4o自动整理。注意AI可能犯错。代码和理论由GPT-4o(2024-5-21)自行撰写未经人工复核。 参数化查询防SQL注入 参数化查询通过将SQL语句和数据分离来防止SQL注…

学习笔记:防止SQL注入、XSS攻击和文件上传漏洞(Python3)

本笔记由生成式大模型GPT-4o自动整理。注意AI可能犯错。代码和理论由GPT-4o(2024-5-21)自行撰写未经人工复核。

参数化查询防SQL注入

参数化查询通过将SQL语句和数据分离来防止SQL注入:

import pymysqlconnection = pymysql.connect(host='localhost', user='user', password='passwd', db='db')
cursor = connection.cursor()
username, password = "admin", "password123"sql = "SELECT * FROM users WHERE username=%s AND password=%s"
cursor.execute(sql, (username, password))
result = cursor.fetchall()
防止XSS攻击的方法
  1. 输出编码:在输出到网页时进行编码。

  2. 内容安全策略(CSP):使用CSP头限制浏览器执行或加载的内容。

    Content-Security-Policy: default-src 'self';
    
  3. 输入验证和清理:严格验证和清理用户输入。

  4. 使用安全的库和框架:例如,使用Django。

  5. 设置HTTP头

    X-XSS-Protection: 1; mode=block
    
文件上传漏洞的解决方法(Python3后端)
  1. 文件类型验证

    from werkzeug.utils import secure_filename
    from flask import Flask, request, abortapp = Flask(__name__)
    app.config['UPLOAD_FOLDER'] = '/path/to/upload'
    app.config['ALLOWED_EXTENSIONS'] = {'png', 'jpg', 'jpeg', 'gif'}def allowed_file(filename):return '.' in filename and filename.rsplit('.', 1)[1].lower() in app.config['ALLOWED_EXTENSIONS']@app.route('/upload', methods=['POST'])
    def upload_file():if 'file' not in request.files:abort(400, 'No file part')file = request.files['file']if file.filename == '':abort(400, 'No selected file')if file and allowed_file(file.filename):filename = secure_filename(file.filename)file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))return 'File successfully uploaded'else:abort(400, 'File type not allowed')
    
  2. 文件名安全处理

    from werkzeug.utils import secure_filenamefilename = secure_filename(file.filename)
    
  3. 限制文件大小

    app.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024  # 16MB
    
  4. 存储位置和权限

    import osUPLOAD_FOLDER = '/path/to/upload'
    if not os.path.exists(UPLOAD_FOLDER):os.makedirs(UPLOAD_FOLDER, exist_ok=True)
    os.chmod(UPLOAD_FOLDER, 0o700)
    
总结

通过参数化查询防止SQL注入,使用输出编码、CSP、输入验证等技术防止XSS攻击,并在Python3后端通过文件类型验证、文件名处理、限制文件大小等措施防止文件上传漏洞,可以有效提高Web应用的安全性。

http://www.yayakq.cn/news/567690/

相关文章:

  • 社交网站学网站建设需要下载什么
  • 福州移动网站建设新手如何给自己的网站做优化
  • 微信网站建设公司费用学网站平面设计
  • 吉祥物在线设计网站做靓号网站
  • 数码产品销售网站建设策划书电商网站设计素材
  • 广州微信网站建设网站制作和维护费用
  • 做网站必须需要服务器嘛常用于做网站的软件
  • 做网站项目计划书辽阳建设银行网站
  • 爱用建站怎么样安顺高端网站建设平台
  • 帮别人做网站维护违法小程序开发助手
  • 下载了网站源码番禺人才网招聘网官网最新招聘
  • 国外做的好的电商网站推荐织梦cms发布侵权网站清单
  • 有域名之后怎么自己做网站中国大数据公司排名10强
  • 城市建设最好的网站郑州seo服务技术
  • 合肥知名网站制作公司昆明网站建设推广服务
  • 乌当区城乡建设局网站做外贸网站要什么条件
  • html5网站建设公司哪些网站做农产品电子商务
  • 电子商务网站建设实训报告范文网站怎么自己做服务器
  • 网站建设视频教程。网站可以做弹窗广告么
  • 站长工具app下载谢岗东莞网站建设
  • 怎么看一个网站是否被k做美足网站违法吗
  • 重庆网站seo多少钱python创建网站
  • 个人备案网站用于企业简单的管理系统有哪些
  • 网站seo去哪个网站找好学室内设计学费大概要多少钱
  • 网站正在建设中英文表述求一个免费的
  • 湖北交投建设集团网站网站免费做招生宣传
  • 中英语网站制作方法wordpress教程创建网页
  • 学做衣服网站wordpress自建表格
  • 国家企业公司网站建设dw可以做wordpress
  • 大学生网站建设结题报告原画零基础自学