电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

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

python實現web郵箱掃描的示例(附源碼)

瀏覽:96日期:2022-06-23 17:13:37

信息收集是進行滲透測試的關鍵部分,掌握大量的信息對于攻擊者來說是一件非常重要的事情,比如,我們知道一個服務器的版本信息,我們就可以利用該服務器框架的相關漏洞對該服務器進行測試。那么如果我們掌握了該服務器的管理員的郵箱地址,我們就可以展開一個釣魚攻擊。所以,對web站點進行郵箱掃描,是進行釣魚攻擊的一種前提條件。

下面,我們利用python腳本來實現一個web站點的郵箱掃描爬取。目的是在實現這個腳本的過程中對python進行學習

最后有完整代碼

基本思路 我們向工具傳入目標站點之后,首先要對輸入進行一個基本的檢查和分析,因為我們會可能會傳入各種樣式的地址,比如http://www.xxxx.com/、http://www.xxxx.com/123/456/789.html等等,我們需要對其進行簡單的拆分,以便于后面鏈接的爬取 通過requests庫爬取目標地址的內容,并且在內容通過正則表達式中尋找郵箱地址 查找爬取的網站中的超鏈接,通過這些超鏈接我們就能進入到該站點的另外一個頁面繼續尋找我們想要的郵箱地址。 開工: 該腳本所需要的一些庫

from bs4 import BeautifulSoup #BeautifulSoup最主要的功能是從網頁抓取數據,Beautiful Soup自動將輸入文檔轉換為Unicode編碼import requests #requests是python實現的最簡單易用的HTTP庫import requests.exceptionsimport urllib.parsefrom collections import deque #deque 是一個雙端隊列, 如果要經常從兩端append 的數據, 選擇這個數據結構就比較好了, 如果要實現隨機訪問,不建議用這個,請用列表. import re #是一個正則表達式的庫獲取掃描目標

user_url=str(input(’[+] Enter Target URL to Scan:’))urls =deque([user_url]) #把目標地址放入deque對象列表scraped_urls= set()#set() 函數創建一個無序不重復元素集,可進行關系測試,刪除重復數據,還可以計算交集、差集、并集等。emails = set()對網頁進行郵箱地址爬?。?00條)

首先要對目標地址進行分析,拆分目標地址的協議,域名以及路徑。然后利用requests的get方法訪問網頁,通過正則表達式過濾出是郵箱地址的內容。’[a-z0-0.-+]+@[a-z0-9.-+]+.[a-z]+’,符合郵箱格式的內容就進行收錄。

count=0try: while len(urls): #如果urls有長度的話進行循環 count += 1#添加計數器來記錄爬取鏈接的條數 if count ==101: break url = urls.popleft() #popleft()會刪除urls里左邊第一條數據并傳給url scraped_urls.add(url) parts = urllib.parse.urlsplit(url) # 打印 parts會顯示:SplitResult(scheme=’http’, netloc=’www.baidu.com’, path=’’, query=’’, fragment=’’) base_url = ’{0.scheme}://{0.netloc}’.format(parts)#scheme:協議;netloc:域名 path = url[:url.rfind(’/’)+1] if ’/’ in parts.path else url#提取路徑 print(’[%d] Processing %s’ % (count,url)) try: head = {’User-Agent’:'Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; en) Presto/2.8.131 Version/11.11'} response = requests.get(url,headers = head) except(requests.exceptions.MissingSchema,requests.exceptions.ConnectionError): continue new_emails = set(re.findall(r’[a-z0-0.-+_]+@[a-z0-9.-+_]+.[a-z]+’, response.text ,re.I))#通過正則表達式從獲取的網頁中提取郵箱,re.I表示忽略大小寫 emails.update(new_emails)#將獲取的郵箱地址存在emalis中。通過錨點進入下一網頁繼續搜索

soup = BeautifulSoup(response.text, features=’lxml’) for anchor in soup.find_all(’a’): #尋找錨點。在html中,<a>標簽代表一個超鏈接,herf屬性就是鏈接地址 link = anchor.attrs[’href’] if ’href’ in anchor.attrs else ’’ #如果,我們找到一個超鏈接標簽,并且該標簽有herf屬性,那么herf后面的地址就是我們需要錨點鏈接。 if link.startswith(’/’):#如果該鏈接以/開頭,那它只是一個路徑,我們就需要加上協議和域名,base_url就是剛才分離出來的協議+域名link = base_url + link elif not link.startswith(’http’):#如果不是以/和http開頭的話,就要加上路徑。link =path + link if not link in urls and not link in scraped_urls:#如果該鏈接在之前沒還有被收錄的話,就把該鏈接進行收錄。urls.append(link)except KeyboardInterrupt: print(’[+] Closing’)for mail in emails: print(mail)完整代碼

from bs4 import BeautifulSoupimport requestsimport requests.exceptionsimport urllib.parsefrom collections import dequeimport reuser_url=str(input(’[+] Enter Target URL to Scan:’))urls =deque([user_url])scraped_urls= set()emails = set()count=0try: while len(urls): count += 1 if count ==100: break url = urls.popleft() scraped_urls.add(url) parts = urllib.parse.urlsplit(url) base_url = ’{0.scheme}://{0.netloc}’.format(parts) path = url[:url.rfind(’/’)+1] if ’/’ in parts.path else url print(’[%d] Processing %s’ % (count,url)) try: head = {’User-Agent’:'Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; en) Presto/2.8.131 Version/11.11'} response = requests.get(url,headers = head) except(requests.exceptions.MissingSchema,requests.exceptions.ConnectionError): continue new_emails = set(re.findall(r’[a-z0-0.-+_]+@[a-z0-9.-+_]+.[a-z]+’, response.text ,re.I)) emails.update(new_emails) soup = BeautifulSoup(response.text, features=’lxml’) for anchor in soup.find_all(’a’): link = anchor.attrs[’href’] if ’href’ in anchor.attrs else ’’ if link.startswith(’/’):link = base_url + link elif not link.startswith(’http’):link =path + link if not link in urls and not link in scraped_urls:urls.append(link)except KeyboardInterrupt: print(’[+] Closing’)for mail in emails: print(mail)實驗………………

python實現web郵箱掃描的示例(附源碼)

以上就是python實現web郵箱掃描的示例(附源碼)的詳細內容,更多關于python web郵箱掃描的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 信阳市建筑勘察设计研究院有限公司 | 阀门智能定位器_电液动执行器_气动执行机构-赫尔法流体技术(北京)有限公司 | 建筑资质代办-建筑企业资质代办机构-建筑资质代办公司 | 【灵硕展览集团】展台展会设计_展览会展台搭建_展览展示设计一站式服务公司 | 上海道勤塑化有限公司| 润滑油加盟_润滑油厂家_润滑油品牌-深圳市沃丹润滑科技有限公司 琉璃瓦-琉璃瓦厂家-安徽盛阳新型建材科技有限公司 | 右手官网|右手工业设计|外观设计公司|工业设计公司|产品创新设计|医疗产品结构设计|EMC产品结构设计 | 数字展示在线_数字展示行业门户网站 | 影合社-影视人的内容合作平台 | 镀锌方管,无缝方管,伸缩套管,方矩管_山东重鑫致胜金属制品有限公司 | 登车桥动力单元-非标液压泵站-非标液压系统-深圳市三好科技有限公司 | 气动隔膜阀_气动隔膜阀厂家_卫生级隔膜阀价格_浙江浙控阀门有限公司 | 炉门刀边腹板,焦化设备配件,焦化焦炉设备_沧州瑞创机械制造有限公司 | 电缆接头-防爆电缆接头-格兰头-金属电缆接头-防爆填料函 | 连续油炸机,全自动油炸机,花生米油炸机-烟台茂源食品机械制造有限公司 | 浙江栓钉_焊钉_剪力钉厂家批发_杭州八建五金制造有限公司 | 粘弹体防腐胶带,聚丙烯防腐胶带-全民塑胶| 山东齐鲁漆业有限公司【官网】-工业漆专业生产厂家 | 压力喷雾干燥机,喷雾干燥设备,柱塞隔膜泵-无锡市闻华干燥设备有限公司 | 道达尔润滑油-食品级润滑油-道达尔导热油-合成导热油,深圳道达尔代理商合-深圳浩方正大官网 | 重庆LED显示屏_显示屏安装公司_重庆LED显示屏批发-彩光科技公司 重庆钣金加工厂家首页-专业定做监控电视墙_操作台 | 除尘器布袋骨架,除尘器滤袋,除尘器骨架,电磁脉冲阀膜片,卸灰阀,螺旋输送机-泊头市天润环保机械设备有限公司 | 拉力机-万能试验机-材料拉伸试验机-电子拉力机-拉力试验机厂家-冲击试验机-苏州皖仪实验仪器有限公司 | 网架支座@球铰支座@钢结构支座@成品支座厂家@万向滑动支座_桥兴工程橡胶有限公司 | 金属管浮子流量计_金属转子流量计厂家-淮安润中仪表科技有限公司 | 冷藏车厂家|冷藏车价格|小型冷藏车|散装饲料车厂家|程力专用汽车股份有限公司销售十二分公司 | 杰福伦_磁致伸缩位移传感器_线性位移传感器-意大利GEFRAN杰福伦-河南赉威液压科技有限公司 | 臭氧老化试验箱,高低温试验箱,恒温恒湿试验箱,防水试验设备-苏州亚诺天下仪器有限公司 | 菏泽商标注册_菏泽版权登记_商标申请代理_菏泽商标注册去哪里 | 气动机械手-搬运机械手-气动助力机械手-山东精瑞自动化设备有限公司 | ICP备案查询_APP备案查询_小程序备案查询 - 备案巴巴 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 篮球架_乒乓球台_足球门_校园_竞技体育器材_厂家_价格-沧州浩然体育器材有限公司 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | 单电机制砂机,BHS制砂机,制沙机设备,制砂机价格-正升制砂机厂家 单级/双级旋片式真空泵厂家,2xz旋片真空泵-浙江台州求精真空泵有限公司 | 铁盒_铁罐_马口铁盒_马口铁罐_铁盒生产厂家-广州博新制罐 | 圆形振动筛_圆筛_旋振筛_三次元振动筛-河南新乡德诚生产厂家 | 新能源汽车电池软连接,铜铝复合膜柔性连接,电力母排-容发智能科技(无锡)有限公司 | 迪威娱乐|迪威娱乐客服|18183620002 | 牛皮纸|牛卡纸|进口牛皮纸|食品级牛皮纸|牛皮纸厂家-伽立实业 |