打造属于自己的神兵利器

admin 2022年4月18日08:45:49评论32 views字数 3996阅读13分19秒阅读模式

山东新潮信息

专业|专注|卓越|安全


打造属于自己的神兵利器
打造属于自己的神兵利器
打造属于自己的神兵利器
打造属于自己的神兵利器
打造属于自己的神兵利器
打造属于自己的神兵利器
打造属于自己的神兵利器


声明:Tide安全团队原创文章,转载请声明出处!文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担!


一、前言

        多个人同时做一个渗透测试项目,每个人挖出的漏洞不尽相同,除了平时积累的经验和做测试时胆大心细外往往还和使用的工具有关。本次我来给大家介绍各种工具中字典的整理。

二、敏感目录字典整理

        之前一直以为字典越大越好,于是我就搜集了大量的目录字典,当对一些src漏洞挖掘时,每个网站目录扫描至少要花费半天时间,由于实在忍不了这个时间,决定重新整理目录。

        首先还是从工具中搜集大量的目录字典,从网上搜集了二十多个目录扫描的工具,剔除其它文件后字典占用空间两百多兆。

打造属于自己的神兵利器

        将所有的字典文件按大小进行排序,因为部分工具使用相同的字典,会对结果造成很大的影响,删除重复的文件还剩下两百多个文件,占用空间两百兆。

打造属于自己的神兵利器

        为了查看方便,使用批量重命名工具对所有文件进行重命名操作。

打造属于自己的神兵利器        文件编码存在差异,使用工具将文件编码进行统一。

打造属于自己的神兵利器        编写了一个python脚本,对两百文件进行处理,首先判断首字母是否为 / 结尾是否为 /,首字母不是 / 给添加,结果存在 / 给删除,接着去除无用行,如.png .css等 ,最后按照后缀进行分类,分别为asp、aspx、php、jsp、dir,并把出现次数最多的排在最上面。

import os

q_aspx = {}
q_asp = {}
q_php = {}
q_jsp = {}
q_dir = {}

for x in os.listdir(os.chdir(os.getcwd() + '/dir')):
with open(x, 'r', encoding ='utf-8',errors ='ignore') as f1:
print(x)
list1 = f1.readlines()
for i in list1:
if i.startswith('/'): #
pass
else:
i = "/" + i
if i.strip().endswith('/'):
i = i[0:-1]
if ".gif" in i or ".png" in i or ".swf" in i or ".flv" in i or ".dll" in i or "inc" in i or ".css" in i or ".jpg" in i or "skins" in i or "Fonts" in i or "../" in i or "thumbs.db" in i:
pass
elif "aspx" == i.strip('n')[-4:] or "ashx" == i.strip('n')[-4:]:
if i.strip('n') in q_aspx:
q_aspx[i.strip('n')] = q_aspx[i.strip('n')] + 1
else:
q_aspx[i.strip('n')] = 0
elif ".asp" == i.strip('n')[-4:] or ".asa" == i.strip('n')[-4:] or ".mdb" == i.strip('n')[-4:]:
if i.strip('n') in q_asp:
q_asp[i.strip('n')] = q_asp[i.strip('n')] + 1
else:
q_asp[i.strip('n')] = 0
elif ".php" == i.strip('n')[-4:]:
if i.strip('n') in q_php:
q_php[i.strip('n')] = q_php[i.strip('n')] + 1
else:
q_php[i.strip('n')] = 0
elif ".jsp" == i.strip('n')[-4:]:
if i.strip('n') in q_jsp:
q_jsp[i.strip('n')] = q_jsp[i.strip('n')] + 1
else:
q_jsp[i.strip('n')] = 0
else:
if i.strip('n') in q_dir:
q_dir[i.strip('n')] = q_dir[i.strip('n')] + 1
else:
q_dir[i.strip('n')] = 0

q_aspx = sorted(q_aspx.items(),key=lambda x:x[1],reverse=True)
q_asp = sorted(q_asp.items(),key=lambda x:x[1],reverse=True)
q_php = sorted(q_php.items(),key=lambda x:x[1],reverse=True)
q_jsp = sorted(q_jsp.items(),key=lambda x:x[1],reverse=True)
q_dir = sorted(q_dir.items(),key=lambda x:x[1],reverse=True)

f2 = open('../q_asp.txt', 'w')
for i,k in q_asp:
# if k == 0:
# pass
# else:
# f2.write(i + "t" + str(k) + "n")
f2.write(i + "t" + str(k) + "n")
f2.close()

f3 = open('../q_aspx.txt', 'w')
for i,k in q_aspx:
# if k == 0:
# pass
# else:
# f3.write(i + "t" + str(k) + "n")
f3.write(i + "t" + str(k) + "n")
f3.close()

f4 = open('../q_php.txt', 'w')
for i,k in q_php:
# if k == 0:
# pass
# else:
# f4.write(i + "t" + str(k) + "n")
f4.write(i + "t" + str(k) + "n")
f4.close()

f5 = open('../q_dir.txt', 'w')
for i,k in q_dir:
# if k == 0:
# pass
# else:
# f5.write(i + "t" + str(k) + "n")
f5.write(i + "t" + str(k) + "n")
f5.close()

f6 = open('../q_jsp.txt', 'w')
for i,k in q_jsp:
# if k == 0:
# pass
# else:
# f6.write(i + "t" + str(k) + "n")
f6.write(i + "t" + str(k) + "n")
f6.close()

        查看处理后的结果,根据个人删除出现次数较少的。

打造属于自己的神兵利器

        Windows服务器不区分大小写,如果想要更节省时间,先把所有的字典转化为小写在进行处理。这就需要扫描前先判断是Windows和Linux。

三、子域名字典整理

        子域名收集就相对简单多了,从多个子域名扫描工具中将字典进行去重,字域名搜集的越多越好,可进行攻击的面越大。

打造属于自己的神兵利器

FuzzDomain工具扫描时自动生成字典,指定扫描字域名的字符及位数,并且可扫描三级域名。

打造属于自己的神兵利器

        千万不能忽略通过搜素引擎去搜集字域名。(代码水平比较水,大佬请绕过)

from urllib.request import urlopen
from urllib.error import HTTPError
from bs4 import BeautifulSoup

site = []
lagestpage = 76
count = ''
domain = "baidu.com"

for i in range(lagestpage):
    Page = (i) * 10
    url = "http://www.baidu.com/s?wd=site:"+domain+"&pn="+str(Page)
    try:
        html = urlopen(url)
    except HTTPError as e:
        print(e)
    try:
        bs0bj = BeautifulSoup(html.read(), "html.parser", from_encoding="iso-8859-1")

        subdomain = bs0bj.findAll("a",{"class":"c-showurl"})
        for name in subdomain:
            for i in name.get_text().split('/'):
                if domain in i:
                    site.append(i)
                    print(i)
        currpage = bs0bj.findAll("strong")
        if count == currpage:
            break
        else:
            count = currpage
    except AttributeError as e:
        print(e)

print("n--------------------------------n")

for i in list(set(site)):
print(i)

print("n--------------------------------n")

四、用户密码字典整理

        各种爆破工具里面密码字典进行整合(kali里面比较多),将社工库里的密码也可整合进来,按照出现的次数进行排序。然后在排名前多少。

打造属于自己的神兵利器

        常见用户名字典,从互联网上下载中国姓名排行榜,在通过某网站将汉字转化为拼音。

打造属于自己的神兵利器

        常见管理后台账号

打造属于自己的神兵利器


五、总结

        字典整理完成在配合自己顺手工具进行使用。





E




N




D






打造属于自己的神兵利器


guān




zhù







men





Tide安全团队正式成立于2019年1月,是新潮信息旗下以互联网攻防技术研究为目标的安全团队,目前聚集了十多位专业的安全攻防技术研究人员,专注于网络攻防、Web安全、移动终端、安全开发、IoT/物联网/工控安全等方向。

想了解更多Tide安全团队,请关注团队官网: http://www.TideSec.net 或长按二维码关注公众号:

打造属于自己的神兵利器




原文始发于微信公众号(白帽子):打造属于自己的神兵利器

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月18日08:45:49
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   打造属于自己的神兵利器https://cn-sec.com/archives/920710.html

发表评论

匿名网友 填写信息