当前位置: 首页 > article >正文

ASP.NET Web Forms框架识别

ASP.NET 支持三种不同的开发模式:
Web Pages(Web 页面)、MVC(Model View Controller 模型-视图-控制器)、Web Forms(Web 窗体):

Web Pages
单页面模式
MVC
模型-视图-控制器
Web Forms
事件驱动模式

最简单的 ASP.NET 模式。

与 PHP 和经典 ASP 相似。

内置了数据库、视频、图形、社交媒体等模板和帮助器。

MVC 将 Web 应用程序分成 3 个不同的组成部分:

模型负责数据
视图负责显示
控制器负责输入

传统的 ASP.NET 事件驱动开发模式:

带有服务器控件、服务器事件和服务器代码的网页。

ASP.NET 文件扩展名

Web Pages 框架的文件后缀是 .cshtml 、.vbhtml

Web Forms 框架的文件后缀是 .asp、.aspx、.ashx

MVC 框架是直接访问路由接口例如 /Login/index

ihoneyBin.py脚本输出的结果有其他架构的,我们可以通过 Web Forms 框架的文件后缀是 .asp、.aspx、.ashx来筛选 Web Forms 架构的

bandefind.py代码

import requests
from urllib.parse import urlparse
from bs4 import BeautifulSoup
from requests.packages import urllib3
import timeurllib3.disable_warnings()banner = """_( )HH_H_ .-'-.-'-./         \\|           ||   .-------'._|  / /  '.' '. \\|  \ \ @   @ / / |   '---------'        |    _______|  |  .'-+-+-+|  |  '.-+-+-+|         kill all IIS|    ""\""\"" |'-.__   __.-'\"""
"""
print(banner)
def extract_base_urls(input_file='result.txt', output_file='bd.txt'):with open(input_file, 'r', encoding='utf-8') as file:lines = file.readlines()base_urls = []for line in lines:if line.strip():  url = line.split()[0] if '/bin.zip' in url:base_url = url.split('/bin.zip')[0]elif '/bin.rar' in url:base_url = url.split('/bin.rar')[0]else:base_url = urlbase_urls.append(base_url)with open(output_file, 'w', encoding='utf-8') as f:for url in base_urls:f.write(url + '\n')return base_urlsdef is_webforms(url, timeout=10):headers = {"User-Agent": "Mozilla/5.0"}try:response = requests.get(url, headers=headers, timeout=timeout, verify=False)response.encoding = response.apparent_encoding# 检查URL路径中的扩展名if any(ext in urlparse(url).path.lower() for ext in ['.aspx', '.ascx', '.ashx']):return Truesoup = BeautifulSoup(response.text, 'html.parser')if (soup.find('input', {'id': '__VIEWSTATE'}) or any(soup.find('input', {'id': el}) for el in ['__EVENTTARGET', '__EVENTARGUMENT', '__EVENTVALIDATION'])):return Truefor form in soup.find_all('form'):if form.get('action', '').lower().endswith('.aspx'):return Truereturn Falseexcept Exception as e:return Falsedef scan_webforms(urls, delay=0.5):for url in urls:if not url.startswith(('http://', 'https://')):url = 'http://' + urlif is_webforms(url):print(url)time.sleep(delay)if __name__ == "__main__":base_urls = extract_base_urls()scan_webforms(base_urls)

脚本会自动去处理 ihoneyBin.py 工具输出的 result.txt 文件里的url地址,然后去识别是 Web Forms 框架的

bandefind.bat

@echo off
python bandefind.py
pause

http://www.lryc.cn/news/2394325.html

相关文章:

  • LG P4119 [Ynoi2018] 未来日记 Solution
  • 流程引擎选型指南
  • 基于大模型预测带状疱疹(无并发症)诊疗方案的研究报告
  • 哈工大计统大作业-程序人生
  • 设计模式——装饰器设计模式(结构型)
  • 途景VR智拍APP:开启沉浸式VR拍摄体验
  • Linux环境搭建MCU开发环境
  • Android高级开发第一篇 - JNI(初级入门篇)
  • Kubernetes RBAC权限控制:从入门到实战
  • python实战项目71:基于Python的US News世界大学排名数据爬取
  • 【基础算法】高精度(加、减、乘、除)
  • 跨平台开发框架electron
  • Windows最快速打开各项系统设置大全
  • 嵌入式编译工具链熟悉与游戏移植
  • DeepSeek-R1-0528,官方的端午节特别献礼
  • LNMP环境中php7.2升级到php7.4
  • 001 flutter学习的注意事项及前期准备
  • FactoryBean 接口
  • CS144 - Lecture 1 记录
  • 【Redis】大key问题详解
  • 【数据结构】——二叉树--链式结构
  • TKernel模块--杂项
  • 充电便捷,新能源汽车移动充电服务如何预约充电
  • laya3的2d相机与2d区域
  • 2024 CKA模拟系统制作 | Step-By-Step | 19、题目搭建-升级集群
  • 47道ES67高频题整理(附答案背诵版)
  • Lauterbach TRACE32专栏
  • 基于 Chrome 浏览器扩展的Chroma简易图形化界面
  • python打卡day41
  • IM系统的负载均衡