python实现web邮箱扫描

本文介绍如何使用Python进行Web邮箱扫描,这对于渗透测试和信息收集至关重要。通过解析目标站点,利用requests库抓取内容,再用正则表达式提取邮箱地址,进而遍历超链接继续搜索。提供完整代码,适合学习Python网络爬虫和信息收集。
摘要由CSDN通过智能技术生成

python实现web邮箱扫描

信息收集是进行渗透测试的关键部分,掌握大量的信息对于攻击者来说是一件非常重要的事情,比如,我们知道一个服务器的版本信息,我们就可以利用该服务器框架的相关漏洞对该服务器进行测试。那么如果我们掌握了该服务器的管理员的邮箱地址,我们就可以展开一个钓鱼攻击。所以,对web站点进行邮箱扫描,是进行钓鱼攻击的一种前提条件。

下面,我们利用python脚本来实现一个web站点的邮箱扫描爬取。目的是在实现这个脚本的过程中对python进行学习

  • 最后有完整代码

  • 基本思路

  1. 我们向工具传入目标站点之后,首先要对输入进行一个基本的检查和分析,因为我们会可能会传入各种样式的地址,比如http://www.xxxx.com/
    、http://www.xxxx.com/123/456/789.html等等,我们需要对其进行简单的拆分,以便于后面链接的爬取
  2. 通过requests库爬取目标地址的内容,并且在内容通过正则表达式中寻找邮箱地址
  3. 查找爬取的网站中的超链接,通过这些超链接我们就能进入到该站点的另外一个页面继续寻找我们想要的邮箱地址。
  4. 开工:
  • 该脚本所需要的一些库
from bs4 import BeautifulSoup  #BeautifulSoup最主要的功能是从网页抓取数据,Beautiful Soup自动将输入文档转换为Unicode编码
import requests #requests是python实现的最简单易用的HTTP库
import requests.exceptions
import urllib.parse
from 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()
  • 对网页进行邮箱地址爬取(100条)
    首先要对目标地址进行分析,拆分目标地址的协议,域名以及路径。然后利用requests的get方法访问网页,通过正则表达式过滤出是邮箱地址的内容。’[a-z0-0.-+]+@[a-z0-9.-+]+.[a-z]+’,符合邮箱格式的内容就进行收录。
count=0
try:
    while len(urls):   #如果urls有长度的话进行循环
        count += 1		#添加计数器来记录爬取链接的条数 
        if count ==101:
            break
        url = urls.popleft()  #popleft()会删除urls里左边第
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值