python注入
⑴ 有沒有辦法注入進程調試python
因為python作為主程序的二次開發,因此往往要注入主程序進行調試。
畢竟我沒有主程序源碼。
⑵ 如何檢測 python代碼注入
調用linux系統命令lsof進行專判斷屬 #encoding=utf-8import osdef isOpen(filename): p = os.popen("lsof %s" % filename) content = p.read() p.close() return bool(len(content))print isOpen("a.log")
⑶ Python的sql注入
>>>Enteryourpassword...'or''='
如此可行?
⑷ 動態Python代碼注入怎麼做才能預防安全性
比如說, 文件處理時, 經常習慣取個變數path, 但又經常from os import path
可以這么用:
import os.path
# import os.path後, 使用時, 需要完整回輸入os.path
# 相對答於import os總模塊而言, import os.path能避免無用的引入
path = os.path.join("/tmp", filename)
⑸ cmd無法運行python,會被360提醒有遠程線程注入
可以通來過任意的ssh工具,通過秘鑰或者密源碼的方式連接到遠程Linux機器上通過python命令運行程序,demo如下:
ssh user@ip "python file.py"
註:file程序如需要後台運行,請自行設置守護進程。
⑹ python可以注入游戲嗎
可以抄肯定的是python是可以注入游戲的。
Github上面有個項目,裡面集合了不少的Python開發的小游戲也可以自己玩,也適合新手用來練習項目,另外PyGame裡面集合了很多的python開發的小游戲。
⑺ python+selenium 到底怎麼注入cookie呀
1. 下載、安裝selenium
下載地址:://pypi.python.org/pypi/selenium
目前的版本是:3.0.0b2
支持:Firefox, Chrome, Internet Explorer, PhantomJS
tar包的下載:selenium-3.0.0b2.tar.gz
解壓selenium-3.0.0b2.tar.gz,進入selenium-3.0.0b2目錄,執行下面的命令安裝:
python setup.py install
2. 下載瀏覽器Driver Server
Internet Explorer Driver Server
IEDriverServer_Win32_2.53.1.zip
IEDriverServer_x64_2.53.1.zip
如果下載不了,可以到IEDriverServer_Win32_2.53.1.zip,IEDriverServer_x64_2.53.1.zip中下載。Firefox geckodriver
geckodriver-v0.10.0-linux64.tar.gz
geckodriver-v0.10.0-win64.zip
geckodriver的其他版本其他瀏覽器的driver server
- >>> from selenium import webdriver>>> ie = webdriver.Ie()>>> ie.get("http://www.cnvd.org.cn")>>> ie.get_cookies()
- [{'value': '', 'httpOnly': False, 'name': 'JSESSIONID', 'secure': False}, {'secure': False, 'httpOnly': False, 'expiry': 1470457299, 'value': '1470453699.622|0|sWEFsKmkH%2FTLajrFqRkRWKSdTeY%3D', 'domain': 'www.cnvd.org.cn', 'path': '/', 'name': '__jsl_clearance'}, {'value': '', 'httpOnly': True, 'name': '__jsluid', 'secure': False}, {'secure': False, 'httpOnly': False, 'expiry': 1659704113, 'value': '1470401713484', 'domain': 'www.cnvd.org.cn', 'path': '/', 'name': 'bdshare_firstime'}]12345
- >>> from selenium import webdriver>>> firefox = webdriver.Firefox()>>> firefox.get("http://www.cnvd.org.cn")>>> firefox.get_cookies()
- [{'name': '__jsluid', 'expiry': None, 'httpOnly': True, 'secure': False, 'path': '/', 'domain': 'www.cnvd.org.cn', 'value': ''}, {'name': '__jsl_clearance', 'expiry': None, 'httpOnly': False, 'secure': False, 'path': '/', 'domain': 'www.cnvd.org.cn', 'value': '1470453972.745|0|5w9OUDO2vOYMvowWI%2BF3xGBQlf0%3D'}, {'name': 'JSESSIONID', 'expiry': None, 'httpOnly': False, 'secure': False, 'path': '/', 'domain': 'www.cnvd.org.cn', 'value': ''}, {'name': 'bdshare_firstime', 'expiry': None, 'httpOnly': False, 'secure': False, 'path': '/', 'domain': 'www.cnvd.org.cn', 'value': '1470453972212'}]12345
- import timefrom selenium import webdriverfrom selenium.common.exceptions import WebDriverExceptiondef GetCookie():
- url = "http://www.cnvd.org.cn/flaw/list.htm"
- cookies = [] try:
- print('open IE browser')
- ie = webdriver.Ie()
- print('visit cnvd website')
- ie.get(url)
- timesleep = 8 #需要延時,來獲取完整的cookies
- print('sleep {} seconds'.format(timesleep))
- time.sleep(timesleep) # important to get full cookies
- except WebDriverException as wde:
- print(wde) if ie != None:
- ie.quit() else:
- print('get cookies...')
- cookies = ie.get_cookies()
- ie.quit() if cookies == '' or type(cookies) != list or cookies.__len__() == 0:
- print('cookie is not found') else:
- print('cookies: {}, size: {}'.format(cookies, cookies.__len__()))
- GetCookie()
- $ python3 get_cookie.py
- open IE browser
- visit cnvd website
- sleep 8 seconds
- get cookies...cookies: [{'name': 'JSESSIONID', 'value': '', 'httpOnly': False, 'secure': False}, {'httpOnly': False, 'path': '/', 'name': '__jsl_clearance', 'domain': 'www.cnvd.org.cn', 'expiry': 1472317063, 'value': '1472313463.29|0|qhvo%2BKl%2BfNxrWIU82bwTrL%2BxISE%3D', 'secure': False}, {'name': '__jsluid', 'value': '', 'httpOnly': True, 'secure': False}, {'httpOnly': False, 'path': '/', 'name': 'bdshare_firstime', 'domain': 'www.cnvd.org.cn', 'expiry': 1661615471, 'value': '1472313071070', 'secure': False}], size: 4123456
解壓,並將解壓目錄添加到環境變數中。
注意1:在windows 64位系統也要使用IEDriverServer Win32版本的,否則可能會出現錯誤In particular, be sure you are not attempting to use a 64-bit IEDriverServer.exe against IE 10 or 11, even on 64-bit Windows.
注意2:geckodriver不能在cygwin中使用。IEDriverServer在windows和cygwin環境中都可以使用。
注意3:關於geckodriver的說明: 早期名字叫wires,如果提示wires找不到,可以將geckodriver重命名為wires。
3. 示例
3. 1 示例一:通過IE獲取cookie
在python命令行中執行:
如果你的IE瀏覽器頁面的放大率不是100%,則會有如下錯誤:
selenium.common.exceptions.WebDriverException: Message: Unexpected error launching Internet Explorer. Browser zoom level was set to 130%. It should be set to 100%
解決方法:點擊瀏覽器右下角的「更改縮放級別」,改為100%
3.2 示例二:通過Firefox獲取cookie
在cygwin中執行firefox = webdriver.Firefox(),會有錯誤:
selenium.common.exceptions.WebDriverException: Message: entity not found,
在windows環境執行中不會有問題。
3.3 示例三:python腳本
get_cookie.py
輸出Log:
可能出現的問題:
問題1:selenium.common.exceptions.NoSuchWindowException: Message: Unable to get browser
問題2:selenium.common.exceptions.WebDriverException: Message: Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mode must be set to the same value (enabled or disabled) for all zones.
解決方法1:Internet選項->安全->「Internet」,「本地Intranet」,「受信任的站點」,「受限制的站點」的「啟用保護模式」需要設置成一樣的。都設置成選中狀態,可以解決。或者試試都設置成非選中狀態。
解決方法2:在上面的解決方法用過之後,在windows中可能還會有問題Unable to get browser,可以嘗試著以管理員許可權打開cmd,也許會有驚喜。
⑻ python怎麼防止sql注入
最簡單最容易的抄是限制用戶輸襲入。簡單點的就是不允許用戶輸入單引號 和 --,因為單引號號--在SQL中都是影響執行的,兩種方式一種是在JSP中加判斷。
另一種是在SQL拼接是對單引號和--等進行轉義,例如:str = str.replace("'", "''");
等等,還有其他很多方法。
⑼ sql注入python腳本名怎麼解決
後面加上一個 or 1 = 1