我们在做渗透的时候肯定会用上扫描器的,本人一般会用御剑,当然你也会喜欢别的工具。
很多时候,能否渗透成功其实还挺依赖与字典的,如果把后台给扫出来了,恰好还弱口令,那么岂不是美滋滋。

因此,有一个好的字典是至关重要的。当然了,大佬们渗透多年肯定已经收藏了很多好用的字典了,但是吧,很多时候一个asp的字典里还有aspx啊,php啊,jsp啊等等不相关的东西,
如果不相关的东西多了就会降低扫描的效率了,因此我们需要一个用来整理的工具,可以让我们肆无忌惮的到处收集字典,然后整合到自己的字典库中

创建个data目录  把需要去重和分类的txt文件放到里面
请用python3.X执行

用法如下

python datahanle.py
#!/usr/bin/env python
# -*- conding:utf-8 -*-
import os,re data =[]
asp = []
aspx = []
php = []
jsp = []
mdb = []
dirx = [] def file_name():
for files in os.walk("data"):
#print(files[2]) #当前路径下文件
pass
return files[2]
def datas(dir):
with open("%s"%dir,"r",encoding="gb18030") as f:
for i in f.readlines():
data.append(i)
dirs =file_name()
for i in dirs:
datas("data/%s"%(i))
print("一共有%s条路径"%(len(data)))
data = list(set(data))
print("去重后一共还有%s条路径"%(len(data))) count_asp = 0
count_aspx = 0
count_jsp = 0
count_php = 0
count_dirx = 0
count_mdb = 0 data = sorted(data) #对列表排序 for i in data:
#rule = re.compile(r".*?asp",re.I)
res = re.search('.*?\.asp',i,flags=re.I)
if res == None:
res = re.search('.*?\.mdb', i, flags=re.I)
if res == None:
res = re.search('.*?\.php', i, flags=re.I)
if res == None:
res = re.search('.*?\.jsp', i, flags=re.I)
if res == None:
dirx.append(i)
count_dirx +=1
else:
jsp.append(i)
count_jsp +=1
else:
php.append(i)
count_php +=1
else:
mdb.append(i)
count_mdb += 1
else:
res = re.search('.*?\.aspx', i, flags=re.I)
if res == None:
asp.append(i)
count_asp+=1
else:
aspx.append(i)
count_aspx +=1 print("asp:%s aspx:%s php:%s jsp:%s dir:%s mdb:%s"%(count_asp,count_aspx,count_php,count_jsp,count_dirx,count_mdb))
with open('nwe_asp.txt','a',encoding='utf-8') as f:
for i in asp:
f.write(i) with open('nwe_aspx.txt','a',encoding='utf-8') as f:
for i in aspx:
f.write(i) with open('nwe_php.txt','a',encoding='utf-8') as f:
for i in php:
f.write(i) with open('nwe_jsp.txt','a',encoding='utf-8') as f:
for i in jsp:
f.write(i) with open('nwe_mdb.txt','a',encoding='utf-8') as f:
for i in mdb:
f.write(i) with open('nwe_dir.txt','a',encoding='utf-8') as f:
for i in dirx:
f.write(i)

去重和分类后缀asp、php等路径 用python3写的的更多相关文章

  1. Asp.net项目路径获取方法【转】

    获取项目完整的绝对路径string path = System.AppDomain.CurrentDomain.BaseDirectory.ToString();string path = Serve ...

  2. ASP.NET获取路径的方法

    原文:[转载]ASP.NET获取路径的方法 HttpContext.Current.Request.PhysicalPath;    // 获得当前页面的完整物理路径.比如 F:\XFU.NSQS\p ...

  3. 关于ASP.Net中路径的问题

    比如你的工程是Webapplication1(url是:http://localhost/webapplication1/webform1.aspx) Request.ApplicationPath ...

  4. 2强类型DataSet (2011-12-30 23:16:59)转载▼ 标签: 杂谈 分类: Asp.Net练习笔记 http://blog.sina.com.cn/s/blog_9d90c4140101214w.html

    强类型DataSet (2011-12-30 23:16:59) 转载▼ 标签: 杂谈 分类: Asp.Net练习笔记 using System; using System.Collections.G ...

  5. 强类型DataSet (2011-12-30 23:16:59)转载▼ 标签: 杂谈 分类: Asp.Net练习笔记 http://blog.sina.com.cn/s/blog_9d90c4140101214w.html

    强类型DataSet (2011-12-30 23:16:59) 转载▼ 标签: 杂谈 分类: Asp.Net练习笔记 using System; using System.Collections.G ...

  6. [置顶] Asp.Net底层原理(二、写自己的Asp.Net框架)

    我们介绍过了浏览器和服务器之间的交互过程,接下来介绍Asp.net处理动态请求. 写自己的Asp.Net框架,我们不会引用System.Web这个程序集,我们只需要创建要给自己的类库,所以在接下来的程 ...

  7. direct path read/write (直接路径读/写)

    转载:http://www.dbtan.com/2010/04/direct-path-readwrite.html direct path read/write (直接路径读/写): 直接路径读(d ...

  8. Http,Https (SSL)的Url绝对路径,相对路径解决方案Security Switch 4.2 中文帮助文档 分类: ASP.NET 2014-10-28 14:09 177人阅读 评论(1) 收藏

    下载地址1:https://securityswitch.googlecode.com/files/SecuritySwitch%20v4.2.0.0%20-%20Binary.zip 下载地址2:h ...

  9. Http,Https(SSL)的Url绝对路径,相对路径解决方案Security Switch 4.2的配置和使用 分类: ASP.NET 2014-11-05 12:51 97人阅读 评论(0) 收藏

    下载地址1:https://securityswitch.googlecode.com/files/SecuritySwitch%20v4.2.0.0%20-%20Binary.zip 下载地址2:h ...

随机推荐

  1. mybatis中<foreach>标签的使用

    标签太多,记一下不是特别常用的标签~留着脑袋瓜不机灵的时候看! <foreach>标签  该标签的作用是遍历集合类型的条件 <select id="countByUserL ...

  2. node作为中间层 —> 跨域请求java后台接口(使用http-proxy-middleware中间件)

    情景:利用node的express 作为中间层,跨域调取java后台接口,由于java接口对session有判断,因此每次请求都必须在req的headers中需要带上cookie,否则接口报500错误 ...

  3. Java 错误提示org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException

    java 操作excel文件 发布后报错 org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException XSS ...

  4. Git通过密钥对远程仓库上传和更新详细操作

    1,先到ssh中ls查看之前本地生成的公钥和私钥,然后将别人的密钥替换掉自己的密钥,这里我把别人的密钥放在d:/desktop/id_rsa 中,利用cp /D/Desktop/id_rsa  id_ ...

  5. ie9上传后下载json

    1.保持后台控制器返回的数据为字符串格式 2.js:dataType类型保持为html格式 dataType: 'html',//默认就是html类型,不写对火狐有影响 3.将上传后后台返回的字符串转 ...

  6. Python第六章(北理国家精品课 嵩天等)

    一 1.集合类型定义及其操作: 集合用{}表示,元素用逗号分隔,无序,唯一 集合操作符: |:并 -:减 &:交 ^ :补 <= <:判断子集关系 >= >:判断包含关 ...

  7. Groovy学习笔记-布尔求值

    1.判断字符串为null或空字符串 def str = null if(str) println 'str is not null' else println 'str is null' str = ...

  8. String Method的字符串变换的一个例子

    <!DOCTYPE html> <html lang="en"><head> <meta charset="UTF-8" ...

  9. python—函数

    # 函数:1.减少重复代码:# 2.使程序变的可扩展# 3.使程序变的易维护# 永远只能且返回一个值#def 定义内容# a,b = 5,8# c = a** b# print(c)## def ca ...

  10. C# TCP与UDP

    Http使用端口是80 SMTP使用端口是25 TCP是首选协议,它提供有保证的传输.错误校正和缓冲. System.Net.Sockets. TcpClient类封装了TCP链接,提供属性字段来控制 ...