av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Python如何考慮代碼注入安全?

瀏覽:147日期:2022-09-20 08:34:37

問題描述

目前有一個python的項目,想加入第三方插件開發的一個功能。 插件的形式也就是一個PY文件,但是看了python安全這塊的文章后,發現python是動態的,很容易就注入到核心代碼,包括各種monkeypack之類的,如何做這塊才能安全呢?

PS: 現在有些在線課堂也有 在線編程的功能,他們怎么做到的安全呢?

# plug_hello.pydef hello(): print 'hello world'

# load.pyimport plug_hello plug_hello.hello()

正常這樣加載是沒問題,但是黑客就可以注入。

# plug_hello.pydef hello(): #在 Python 2中, 內置對象可以通過魔法 __builtins__ 模塊進行訪問。一個已知的手段就是利用 __builtins__ 的可變性,這可能引起巨大災難 import __builtins__ __builtins__.False, __builtins__.True = True, False print 'hello world'

黑客這樣寫,整個程序的True 和 False 變量就會出問題,而且黑客使用py特性還能獲取和修改主程序任何運行函數類的源代碼,從而進一步的注入。

問題解答

回答1:

這個問題我也不懂,需要問問專門做這方面的人

我只說說我的想法:

由于第三方的功能由你們制定,預先封裝好第三方需要用到組件模塊,利用sys.module設置模塊白名單,只允許第三方導入你們提供的模塊,其他模塊sys.module[mod] = None禁止導入

PS:在線編程網站都是在沙箱環境里運行用戶代碼的,破壞便破壞了,反正環境是虛擬,貌似跟你這個問題關聯不大

回答2:

分享其中一個心得: 比如說, 文件處理時, 經常習慣取個變量path, 但又經常from os import path

可以這么用:

import os.path# import os.path后, 使用時, 需要完整輸入os.path# 相對于import os總模塊而言, import os.path能避免無用的引入path = os.path.join('/tmp', filename)回答3:

使用ast.literal_eval(), 只允許使用 string,bytes,number,tuples,lists,discts,set,booleans,None

ast.literal_eval(node_or_string)Safely evaluate an expression node or a string containing a Python literal or container display. The string or node provided may only consist of the following Python literal structures: strings, bytes, numbers, tuples, lists, dicts, sets, booleans, and None.

This can be used for safely evaluating strings containing Python values from untrusted sources without the need to parse the values oneself. It is not capable of evaluating arbitrarily complex expressions, for example involving operators or indexing.

Changed in version 3.2: Now allows bytes and set literals.

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 亚洲成av人片在线观看无码 | 天天草夜夜骑 | 久久99视频免费观看 | 国产高清精品在线 | 欧美日韩第一页 | 华丽的挑战在线观看 | 亚洲国产成人av好男人在线观看 | 久久久久国产视频 | 亚洲精品v | 精品国产一区二区三区性色av | 男人亚洲天堂 | 日本高清aⅴ毛片免费 | 精品久久一区二区 | 国外成人在线视频 | 亚洲精品视频在线播放 | 成人国产在线视频 | 国产午夜视频 | 毛片一区二区 | 国产乱码久久久久久一区二区 | 青青草av在线播放 | 日韩视频一区二区 | 成人国内精品久久久久一区 | 欧美一区二区三区日韩 | 天堂视频免费 | 欧美日韩在线播放 | 亚洲精品一区二区三区中文字幕 | 91成人在线视频 | 精品久久久久久久久亚洲 | 亚洲国产日本 | 紧缚调教一区二区三区视频 | 蜜桃视频在线观看免费视频网站www | 中文字幕国产精品 | 久久国产成人 | 久久成人在线视频 | 欧美不卡一区二区三区 | 一区二区三区视频在线观看 | 精品一区二区电影 | 极情综合网 | 日韩伦理一区二区三区 | 国产精品精品视频一区二区三区 | www.黄色网 |