精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Python代碼審計實戰(zhàn)案例總結(jié)之SQL和ORM注入

安全 應(yīng)用安全
Python代碼審計方法多種多樣,但是總而言之是根據(jù)前人思路的遷移融合擴展而形成。目前Python代碼審計思路,呈現(xiàn)分散和多樣的趨勢。

Python代碼審計方法多種多樣,但是總而言之是根據(jù)前人思路的遷移融合擴展而形成。目前Python代碼審計思路,呈現(xiàn)分散和多樣的趨勢。Python微薄研發(fā)經(jīng)驗以及結(jié)合實際遇到的思路和技巧進行總結(jié),以便于朋友們的學(xué)習(xí)和參考。

[[285489]]

SQL注入和ORM注入

這兩者注入相似度較高,所以打算放在一起分析和總結(jié)。它們所用原理OWASP TOP TEN 中的描述非常合適,“將不受信任的數(shù)據(jù)作為命令或查詢的一部分發(fā)送到解析器時,會產(chǎn)生諸如SQL注入、NoSQL注入、OS注入和LDAP注入的注入缺陷。攻擊者的惡意數(shù)據(jù)可以誘使解析器在沒有適當授權(quán)的情況下執(zhí)行非預(yù)期命令或訪問數(shù)據(jù)。”。

1. SQL注入

Python 中常見存在風(fēng)險SQL語句,在id或者Name可控的情況下存在安全隱患。可控參數(shù)可以將咱么期望他執(zhí)行的代碼按照語法進行拼接,從而執(zhí)行原本預(yù)期之外的代碼。

  1. sql = "select id,name from user_table where id = %s and name = %s" % (id, name) 
  2. cur.execute(sql) 

然而在實際案例中,這種執(zhí)行SQL語句并不多,比較典型的案例。實例代碼如下:

  1. import urllib 
  2. import MySQLdb 
  3. import SocketServer 
  4. from SimpleHTTPServer import SimpleHTTPRequestHandler 
  5. class MyHandler(SimpleHTTPRequestHandler): 
  6.     def _set_headers(self): 
  7.         self.send_response(200) 
  8.         self.send_header('Content-type', 'text/html') 
  9.         self.end_headers() 
  10.     def do_GET(self): 
  11.         print("got get request %s" % (self.path)) 
  12.         hql = urllib.splitquery(self.path)[1] 
  13.         uri_c = str(hql) 
  14.         print('cmd===%s' % (uri_c)) 
  15.         sql = "select id from user_table where id = %s" % uri_c 
  16.         db = MySQLdb.connect("localhost", "testuser", "test123", "TESTDB", charset='utf8'
  17.         cursor = db.cursor() 
  18.         cursor.execute(sql) 
  19.         data = cursor.fetchone() 
  20.         self.wfile.write(data) 
  21. def start_server(): 
  22.     httpd = SocketServer.TCPServer(("127.0.0.1", 8090), MyHandler) 
  23.     print('Starting httpd...') 
  24.     httpd.serve_forever() 
  25. if __name__ == "__main__": 
  26.     start_server() 

這是一個簡單的HTTP服務(wù)器,目前在Python2中可以正常運行。通過urllib.splitquery獲取GET請求的參數(shù),uri_c 里面為請求參數(shù)的值。用值傳遞到SQL語句中拼接,從而產(chǎn)生注入問題。這是比較簡單的一種,正常情況下調(diào)用鏈可能會比較長,長短取決于平臺的設(shè)計架構(gòu)。

2. ORM注入

(1) sqlalchemy ORM注入(CNVD-2019-17301)

考慮到的理解上比較容易,用模塊進行舉例,并不涉及到框架。ORM注入是SQL注入的一種特殊情況,ORM模塊將SQL語句進行模板化,所以找SQL語句字符串的辦法不好用了。那么應(yīng)該怎么辦?根據(jù)模塊來找尋執(zhí)行方法,如果模塊存在問題和未妥善過濾或轉(zhuǎn)義、存在可控變量則可能會產(chǎn)生問題。如何去發(fā)現(xiàn)和查找Python ORM模塊,展現(xiàn)朋友們搜索技能的時候到了,不再老生常談。下面進入案例:

  1. from sqlalchemy import create_engine 
  2. from sqlalchemy.orm import sessionmaker 
  3. import sqlalchemy 
  4. print("sqlalchemy_version:",sqlalchemy.__version__) 
  5. engine = create_engine('mysql://root:123456@192.168.56.101:3306/mysql?charset=utf8') 
  6. DB_Session = sessionmaker(bind=engine
  7. session = DB_Session() 
  8. session.execute('use mysql;') 
  9. print( 
  10.         session.execute( 
  11.             """ 
  12.                 select * from user where User='root' and 11=1; 
  13.             """ 
  14.     ).fetchall() 

這個是使用sqlalchemy的ORM注入,它存在任意執(zhí)行SQL語句的接口。道理上講這個是功能,實際情況大多數(shù)程序員都會認為ORM是能夠防御SQL注入,這個可能會成為漏洞。通過轉(zhuǎn)義可以更好的解決問題,但是官方可能并不重視。另外還有sqlalchemy幾個問題利用order_by注入、利用”limit”和”offset”關(guān)鍵詞向”select()”函數(shù)傳遞注入等等,方法一樣利用模塊過濾不嚴,暫不多論。

(2) Django JSON SQL注入(CVE-2019-14234)

咱們繼續(xù)看來 Django JSON SQL注入,關(guān)于這個漏洞已經(jīng)有前人分析過了。這個分析有些難度需要咱們了解Django和PostgreSQL,如果感覺吃力不妨先去學(xué)習(xí)一番。了解在PostgreSQL之中關(guān)于JSON數(shù)據(jù)的查詢主要使用ArrayField、JSONField、HStoreField,通過Django如何進行查詢PostgreSQL,Json.objects.filter()和QuerySet.filter()實現(xiàn),準備工作就緒。

查詢使用方法如下:

  1. # 查詢方法 
  2. # 查詢data數(shù)據(jù)下名稱為test的內(nèi)容為'user'的整個字段 
  3. Json.objects.filter(data__test='user'
  4. or 
  5. Json.objects.filter(**{"data__test":'user'}) 

通過補丁判斷實現(xiàn)方法使用了 self.key_name ,QuerySet.filter()的調(diào)用和self.key_name傳遞有關(guān)。

緊接著發(fā)現(xiàn)類 KeyTransformFactory 調(diào)用了 KeyTransform 傳入了 self.key_name ,后續(xù)是字符串拼接。這里不多詳細闡述感興趣的朋友跟下流程。

  1. class KeyTextTransform(KeyTransform): 
  2.     operator = '->>' 
  3.     ... 
  4.     # 字符串拼接 
  5.     (%s %s %s)" % (lhs, self.operator, lookup) 

結(jié)合注入的知識進行實施測試,結(jié)果如下。

  1. # 使用注入 
  2. # 拼接補全SQL語法 
  3. Json.objects.filter(**{"""data__breed'='"a"') OR 11=1 OR('d""":'x',}) 

總結(jié)

本次總結(jié)Python的SQL注入和ORM注入的挖掘方法和相關(guān)案例,SQL注入方面沒有找到對應(yīng)的實際案例,咱們編寫簡單的案例作為參考。ORM注入為兩個案例,分別是關(guān)于模塊和框架。綜合作為實戰(zhàn)挖掘的參考,個人之力,恐有疏漏,盼斧正。

責(zé)任編輯:趙寧寧 來源: FreeBuf
相關(guān)推薦

2020-04-16 10:42:37

Pythonweb安全代碼審計

2019-03-13 08:56:07

JavaSpEL表達式注入

2013-12-02 09:35:10

2014-01-17 12:35:48

2018-02-10 09:44:19

2009-09-14 17:40:47

LINQ To SQL

2014-04-14 10:03:16

2020-08-30 14:34:42

Java語言安全編碼web安全

2018-12-18 09:06:07

2021-04-21 06:15:28

Serverless 云開發(fā) Todo 案例

2023-12-11 06:27:39

MySQL線上業(yè)務(wù)優(yōu)化后臺上傳文件

2010-09-13 14:03:58

2022-12-06 08:29:01

2015-07-31 09:27:56

安全編碼代碼審計Python

2020-01-16 18:30:07

技術(shù)SQL優(yōu)化

2020-12-29 07:15:34

TypeScript語言代碼

2010-12-20 16:04:30

2013-04-19 10:56:54

2019-07-11 12:36:01

AR設(shè)計圖像檢測法

2009-09-28 11:42:21

KestrelScala
點贊
收藏

51CTO技術(shù)棧公眾號

日本伦理一区二区三区| 国产精品免费入口| 国产精品无码免费播放| 婷婷丁香综合| 日韩亚洲欧美一区二区三区| 久久免费视频2| 亚洲高清视频在线播放| 亚洲国产专区校园欧美| 亚洲免费影视第一页| 欧美性猛交久久久乱大交小说| 伊人365影院| 日韩中文一区二区| 偷拍一区二区三区| 亚洲看片网站| 国产av精国产传媒| 国产欧美一区二区三区国产幕精品| 在线欧美一区二区| 欧美日韩最好看的视频| 一级黄色片在线观看| 一区二区三区在线电影| 日韩hd视频在线观看| 国产精品人人爽人人爽| 手机电影在线观看| 91色综合久久久久婷婷| 成人日韩在线电影| 国产在线观看成人| 久久悠悠精品综合网| 欧洲中文字幕精品| 丝袜人妻一区二区三区| 成人午夜影视| 99久久亚洲一区二区三区青草| 中文字幕av一区| 亚洲国产欧美91| xx欧美xxx| 一区二区三区久久久| 国产一区喷水| 91国产免费视频| 亚洲永久字幕| 欧美日韩xxxxx| 欧美日韩中文字幕视频| 超碰地址久久| 欧美一三区三区四区免费在线看 | 欧美日韩亚洲一区二区三区在线观看| 91香蕉视频在线播放| 欧美三级午夜理伦三级在线观看| 午夜影院久久久| 亚洲人久久久| 亚洲风情第一页| 狠狠色综合色综合网络| 国产91亚洲精品| 国产成人亚洲欧洲在线| 亚洲91视频| 日韩在线视频线视频免费网站| 日日碰狠狠躁久久躁婷婷| 成人在线直播| 中文字幕乱码亚洲精品一区| 久久精品国产精品青草色艺| jlzzjlzz亚洲女人18| 美国一区二区三区在线播放 | 亚洲亚洲一区二区三区| 欧美三级午夜理伦三级中视频| 亚洲精品欧洲精品| 你懂的在线观看| 成人av在线一区二区| 91中文精品字幕在线视频| 中文字幕在线观看高清| 日韩精品视频网站| 91成人精品网站| 国产一级一级片| 99re66热这里只有精品8| 国产亚洲精品久久久久动| 黄色国产在线观看| 伊人久久大香线蕉av不卡| 亚洲的天堂在线中文字幕| 一级黄色片毛片| 大奶一区二区三区| 亚洲精品99999| 久久久久国产精品无码免费看| 国产精品一区二区日韩| 亚洲专区一二三| 青春草国产视频| 国产乱码在线| 一二三四区精品视频| 男人的天堂avav| 欧美男男video| 亚洲图片一区二区| av动漫在线看| av高清不卡| 色呦呦一区二区三区| 老司机午夜av| 久久亚洲国产精品尤物| 欧美高清视频在线高清观看mv色露露十八| 国产乱子伦精品视频| 麻豆91在线| 亚洲综合在线视频| 免费无码av片在线观看| 福利精品在线| 日韩一级二级三级| 99re久久精品国产| 欧美日韩伦理| 欧美另类高清videos| 国产一级免费av| 欧美特黄一区| 久久久久久69| 日本黄色一级视频| 国产精品自在在线| 久久久久久久有限公司| 在线看av的网址| 亚洲一二三级电影| 三年中国国语在线播放免费| 日韩高清一区| 国产视频一区在线| 91麻豆精品成人一区二区| 亚洲国产三级| 国产欧美精品久久久| www.五月激情| 国产亚洲精品7777| 日本三级中文字幕在线观看| 瑟瑟视频在线看| 欧美高清视频一二三区| 亚洲最大视频网| 日韩精品免费一区二区在线观看| 亚洲福利视频网| 日本激情小视频| 在线一区电影| 日产日韩在线亚洲欧美| 精品人妻久久久久一区二区三区| 久久99精品国产91久久来源| 国精产品一区二区| 免费的黄网站在线观看| 精品久久久久久亚洲国产300| 午夜在线视频免费观看| 筱崎爱全乳无删减在线观看| 制服丝袜一区二区三区| av在线网站观看| 欧美在线日韩| 国产精品视频自在线| www.黄色国产| 国产精品久久久久桃色tv| 日韩 欧美 视频| 三级成人在线| 日韩大片在线观看视频| √天堂中文官网8在线| 亚洲欧美成人| 国产日韩精品推荐| 波多野结衣在线网站| 亚洲不卡av一区二区三区| 在线播放免费视频| 成人精品中文字幕| 国产99久久久欧美黑人| 亚洲AV第二区国产精品| 亚洲一区二区中文在线| 韩国三级丰满少妇高潮| 欧美激情欧美| 国产人妖伪娘一区91| 国产精品久久久久一区二区国产| 日本一区二区成人在线| 日本在线观看a| 在线视频亚洲专区| 久久久久久久久国产精品| 人妻中文字幕一区二区三区| av亚洲精华国产精华精| 日韩一区二区高清视频| 亚洲一区二区免费在线观看| 在线视频中文亚洲| 中文字幕日本视频| 中文字幕av不卡| 99热手机在线| 成久久久网站| 国产精品三级网站| 欧美黄色激情| 7777精品久久久大香线蕉| 日韩国产第一页| 国产精品亚洲第一| 麻豆一区二区三区在线观看| 日韩免费高清视频网站| 欧美精品激情在线| 五月婷中文字幕| 欧美午夜片欧美片在线观看| 久久久久久亚洲中文字幕无码| 欧美一区成人| 国产一区高清视频| 亚洲欧洲自拍| 在线精品播放av| 国产寡妇亲子伦一区二区三区四区| 蜜桃传媒麻豆第一区在线观看| 国产精品高潮在线| 国产在线1区| 精品国产乱码久久久久久牛牛| 受虐m奴xxx在线观看| 免费高清在线视频一区·| 一区二区视频在线播放| 一区二区三区欧洲区| 欧美成人久久久| 黄色三级网站在线观看| 高跟丝袜一区二区三区| 久久久久亚洲AV成人无在| 精品一区二区在线看| 精品国产三级a∨在线| 国产日韩三级| 国产精品wwww| 91国内在线| 日韩av网站电影| 国产又粗又猛视频免费| 亚洲综合另类小说| 成人影视免费观看| 麻豆freexxxx性91精品| 中文字幕精品一区日韩| 国产精品tv| 国产精品偷伦免费视频观看的| 男人天堂资源在线| 日韩午夜激情免费电影| 亚洲精品国产欧美在线观看| 亚洲妇女屁股眼交7| 任我爽在线视频| 久久综合久色欧美综合狠狠| 污视频在线观看免费网站| 久久婷婷影院| 亚洲一区二区三区av无码| 色小子综合网| 久久久久久久久久码影片| 日本综合精品一区| 91精品久久久久久久久青青| 日本高清不卡一区二区三区视频| 在线看日韩欧美| 免费成人av电影| 欧美大片日本大片免费观看| 一级黄色免费片| 色呦呦网站一区| 天天爽夜夜爽夜夜爽精品| 伊人性伊人情综合网| 亚洲一区电影在线观看| 欧美国产欧美综合| 男女做爰猛烈刺激| 91香蕉视频黄| 一本加勒比波多野结衣| 国产成人啪免费观看软件| 中文av字幕在线观看| 奇米精品一区二区三区在线观看 | 亚洲成a人v欧美综合天堂麻豆| 欧美色手机在线观看| 狠狠狠狠狠狠狠| 精品久久久香蕉免费精品视频| 3d动漫精品啪啪一区二区下载 | 一道本视频在线观看| 亚洲一区二区三区免费在线观看| 视频一区视频二区视频三区高| 午夜精品久久久久久毛片| 欧美最猛性xxxx| 成人片免费看| 日韩av毛片网| 草莓视频成人appios| 国产精品日韩av| 国产精品久久久久久久久免费高清| 久久久久久国产精品久久| 亚洲色图美国十次| 欧美激情综合色综合啪啪五月| 日韩欧美在线观看一区二区| 精品偷拍一区二区三区在线看| 亚洲天天综合网| 欧美日韩第一区日日骚| 91精品国产综合久| 日韩视频一区二区| 日韩一区免费视频| 精品小视频在线| 搞黄视频免费在线观看| 色哟哟入口国产精品| www在线免费观看视频| 欧美国产在线电影| 日韩精品极品| 国产精品久久久久久久午夜| 久久亚洲精品人成综合网| 91在线直播亚洲| 日本欧美三级| 一区二区欧美日韩| 影音先锋国产精品| 国产日韩一区二区在线观看| 麻豆成人av在线| 亚洲欧美日韩色| 日本一区二区三级电影在线观看| 中文写幕一区二区三区免费观成熟| 免费在线观看成人| 久久久精品视频国产| 成人动漫av在线| 天天躁夜夜躁狠狠是什么心态| 亚洲欧美精品午睡沙发| 加勒比成人在线| 一本色道精品久久一区二区三区| 亚洲自拍的二区三区| 亚洲成av人片一区二区密柚 | 婷婷五月色综合香五月| 视频一区不卡| 欧美aⅴ99久久黑人专区| 国产乱子伦农村叉叉叉| 日av在线不卡| 无码一区二区精品| 国产精品理论片在线观看| 国产性一乱一性一伧一色| 在线精品观看国产| 狠狠躁日日躁夜夜躁av| 视频在线观看99| 黄频免费在线观看| 成人午夜在线观看| 久久不见久久见免费视频7| 国产激情片在线观看| 石原莉奈在线亚洲三区| 无码人妻一区二区三区在线| 国产精品欧美一级免费| 西西44rtwww国产精品| 欧美一区二区三区四区久久| 欧美黄色小说| 久久久久久噜噜噜久久久精品| 欧洲成人综合网| 国产精品欧美亚洲777777| 欧美国产极品| 欧美高清中文字幕| 黄网站免费久久| 先锋影音av在线| 日韩欧美成人网| 欧美 日韩 人妻 高清 中文| 久久伊人91精品综合网站| 成人自拍视频网| 美乳视频一区二区| 亚洲黄色免费| 秘密基地免费观看完整版中文| www.亚洲人| 久久久久无码国产精品不卡| 欧美一区午夜视频在线观看| av在线电影院| 国产成人精品网站| 日韩精品免费一区二区三区竹菊| 欧美一区二区三区四区在线观看地址| 国产99久久久国产精品成人免费| 日产精品一线二线三线芒果| 国产日韩1区| 午夜视频在线观看国产| 一区二区三区.www| 国产精品无码一区二区桃花视频| 亚洲成人久久电影| 牛牛在线精品视频| 动漫3d精品一区二区三区| 欧美午夜国产| 日本少妇一区二区三区| 亚洲男人的天堂在线观看| 国产女人18毛片水真多| 久久精品成人欧美大片| 国产精品天堂蜜av在线播放| 亚洲综合网中心| 美国十次了思思久久精品导航| 亚洲成年人av| 亚洲国产精品嫩草影院| 免费观看黄一级视频| 欧美精品激情在线| 欧美xxxx在线| 国产精品99久久免费黑人人妻| 国产成人精品1024| 国产一级特黄a高潮片| 日韩欧美精品在线| 爱搞国产精品| 九色一区二区| 久久字幕精品一区| 娇妻被老王脔到高潮失禁视频| 亚洲一区二区欧美日韩| 粉嫩av一区二区夜夜嗨| 欧美一区二区.| 欧美日韩一二三四| 日本77777| 一区二区三区在线观看网站| 熟妇人妻中文av无码| 国产精品av电影| 天天做天天爱天天综合网| 美女搡bbb又爽又猛又黄www| 偷拍一区二区三区| 第九色区av在线| 亚洲直播在线一区| 午夜在线视频一区二区区别| 美国精品一区二区| 欧美一区二区三区性视频| 国产精品高颜值在线观看| 亚洲国产午夜伦理片大全在线观看网站| 99亚洲精品| 永久免费观看片现看| 日韩色视频在线观看| 538在线视频| 五月天色一区| 国产成人在线免费观看| 欧美三级一区二区三区| 精品国产依人香蕉在线精品| 老司机精品在线| 中文字幕第88页| 午夜精品久久久久影视| 在线观看免费网站黄| 国产精品久久久久久久久婷婷| 欧美1区免费| 91中文字幕永久在线| 91精品国产欧美一区二区18 | 乱人伦xxxx国语对白| 国产日韩欧美精品一区| 国产成人久久精品77777综合 | 色戒汤唯在线观看|