PyHacker实现网站后台扫描器编写指南

 更新时间:2022年05月14日 16:07:45   作者:巡安似海  
这篇文章主要为大家介绍了PyHacker实现网站后台扫描器编写指南,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

包括如何处理假的200页面/404智能判断等

喜欢用Python写脚本的小伙伴可以跟着一起写一写呀。

编写环境:Python2.x

00x1:模块

需要用到的模块如下:

import request

00x2:请求基本代码

先将请求的基本代码写出来:

import requests
def dir(url):
    headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3314.0 Safari/537.36 SE 2.X MetaSr 1.0'}
    req = requests.get(url=url,headers=headers)
    print req.status_code
dir('http://www.hackxc.cc')

00x3:设置

设置超时时间,以及忽略不信任证书

import urllib3
urllib3.disable_warnings()
req = requests.get(url=url,headers=headers,timeout=3,verify=False)

再加个异常处理

调试一下

再进行改进,如果为200则输出

if req.status_code==200:
    print "[*]",req.url

00x4:200页面处理

难免会碰到假的200页面,我们再处理一下

处理思路:

首先访问hackxchackxchackxc.php和xxxxxxxxxx记录下返回的页面的内容长度,然后在后来的扫描中,返回长度等于这个长度的判定为404

def dirsearch(u,dir):
    try:
        headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3314.0 Safari/537.36 SE 2.X MetaSr 1.0'}
        #假的200页面进行处理
        hackxchackxchackxc = '/hackxchackxchackxc.php'
        hackxchackxchackxc_404 =requests.get(url=u+hackxchackxchackxc,headers=headers)
        # print len(hackxchackxchackxc_404.content)
        xxxxxxxxxxxx = '/xxxxxxxxxxxx'
        xxxxxxxxxxxx_404 = requests.get(url=u + xxxxxxxxxxxx, headers=headers)
        # print len(xxxxxxxxxxxx_404.content)
        #正常扫描
        req = requests.get(url=u+dir,headers=headers,timeout=3,verify=False)
        # print len(req.content)
        if req.status_code==200:
            if len(req.content)!=len(hackxchackxchackxc_404.content)and len(req.content)!= len(xxxxxxxxxxxx_404.content):
                print "[+]",req.url
            else:
                print u+dir,404
    except:
        pass

很nice

00x5:保存结果

再让结果自动保存

0x06:完整代码

#!/usr/bin/python
#-*- coding:utf-8 -*-
import requests
import urllib3
urllib3.disable_warnings()
urls = []
def dirsearch(u,dir):
    try:
        headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3314.0 Safari/537.36 SE 2.X MetaSr 1.0'}
        #假的200页面进行处理
        hackxchackxchackxc = '/hackxchackxchackxc.php'
        hackxchackxchackxc_404 =requests.get(url=u+hackxchackxchackxc,headers=headers)
        # print len(hackxchackxchackxc_404.content)
        xxxxxxxxxxxx = '/xxxxxxxxxxxx'
        xxxxxxxxxxxx_404 = requests.get(url=u + xxxxxxxxxxxx, headers=headers)
        # print len(xxxxxxxxxxxx_404.content)
        #正常扫描
        req = requests.get(url=u+dir,headers=headers,timeout=3,verify=False)
        # print len(req.content)
        if req.status_code==200:
            if len(req.content)!=len(hackxchackxchackxc_404.content)and len(req.content)!= len(xxxxxxxxxxxx_404.content):
                print "[+]",req.url
                with open('success_dir.txt','a+')as f:
                    f.write(req.url+"\n")
            else:
                print u+dir,404
        else:
            print u + dir, 404
    except:
        pass
if __name__ == '__main__':
    url = raw_input('\nurl:')
    print ""
    if 'http' not in url:
        url = 'http://'+url
    dirpath = open('rar.txt','r')
    for dir in dirpath.readlines():
        dir = dir.strip()
        dirsearch(url,dir)

以上就是PyHacker实现网站后台扫描器编写指南的详细内容,更多关于PyHacker网站后台扫描器的资料请关注脚本之家其它相关文章!

相关文章

  • Python进度条tqdm的用法详解

    Python进度条tqdm的用法详解

    这篇文章主要介绍了Python进度条tqdm的用法,这对于第三方库非常丰富的Python来说,想要实现这一功能并不是什么难事,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2021-08-08
  • Python可变集合和不可变集合的构造方法大全

    Python可变集合和不可变集合的构造方法大全

    Python集合分为变集合和不可变集合两种,本文就详细的来介绍一下这两种集合的使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • python3 遍历删除特定后缀名文件的方法

    python3 遍历删除特定后缀名文件的方法

    下面小编就为大家分享一篇python3 遍历删除特定后缀名文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • matlab中实现矩阵删除一行或一列的方法

    matlab中实现矩阵删除一行或一列的方法

    下面小编就为大家分享一篇matlab中实现矩阵删除一行或一列的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • python实现红包裂变算法

    python实现红包裂变算法

    这篇文章主要介绍了python实现红包裂变算法的相关资料,需要的朋友可以参考下
    2016-02-02
  • python pandas创建多层索引MultiIndex的6种方式

    python pandas创建多层索引MultiIndex的6种方式

    这篇文章主要为大家介绍了python pandas创建多层索引MultiIndex的6种方式,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • Tensorflow卷积神经网络实例

    Tensorflow卷积神经网络实例

    这篇文章主要为大家详细介绍了Tensorflow卷积神经网络实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • python:socket传输大文件示例

    python:socket传输大文件示例

    本篇文章主要介绍了python:socket传输大文件示例,具有一定的参考价值,有兴趣的可以了解一下,
    2017-01-01
  • selenium+PhantomJS爬取豆瓣读书

    selenium+PhantomJS爬取豆瓣读书

    这篇文章主要为大家详细介绍了selenium+PhantomJS爬取豆瓣读书,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • 基于Python实现一个自动关机程序并打包成exe文件

    基于Python实现一个自动关机程序并打包成exe文件

    这篇文章主要介绍了通过Python创建一个可以自动关机的小程序,并打包成exe文件。文中的示例代码讲解详细,对我们学习Python有一定的帮助,感兴趣的同学可以了解一下
    2021-12-12

最新评论