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

webIPS防止扫描软件扫描网站

防止JSKY扫描WEB应用程序的方法,暂取名为webips ,以下代码经测试,主流JSKY、小钢炮,明鉴,MatriXay,WebRavor、IBM Appscan、HP WebInspect等WEB应用扫描器均无效,同时希望对编程爱好者加入到Honker Security Team共同探索未知的领域,现放出ASP版本代码,开头对网络蜘蛛进行了判断,对垃圾点的ASP程序加入防注入代码,希望大家共同去完善!(使用方法:新建一个文件webips.asp,把公共文件部分调用即可,一般为config.asp等)
<%
user_agent=Request.ServerVariables("HTTP_USER_AGENT")
function check(user_agent) '判断是否是蜘蛛
allow_agent=split("Baiduspider,Scooter,ia_archiver,Googlebot,Sosospider,Yahoo,YoudaoBot,msnbot,Sogou,atraxbot,FAST-WebCrawler,MSNBOT,Aleksika Spider,larbin,Slurp,cuil",",")
check_agent=false
for agenti=lbound(allow_agent) to ubound(allow_agent)
if instr(user_agent,allow_agent(agenti))>0 then
check_agent=true
exit for
end if
next
check=check_agent
end function
if check(user_agent)=False then
if request.servervariables("query_string")<>"" then
urlcan="?"&request.servervariables("query_string")
else
urlcan=""
end if
rurl="http://"&request.servervariables("http_host")&request.servervariables("url")&urlcan
if session("refresh")<> 1 then 
Session("refresh")=session("refresh")+1
Response.redirect rurl
End if
ips=Request.Cookies("ips")
if ips<> "" then 
ips=ips+"dd"
Response.Cookies("ips")=ips
Response.redirect rurl
End if
end if
%>
<%
'dim sql_injdata,SQL_inj,SQL_Get,SQL_Data,Sql_Post,sql_cook
SQL_injdata = "'|and|exec|insert|select|delete|update|count|chr|master|truncate|char|declare|--|script|cast"
SQL_inj = split(SQL_Injdata,"|")
If Request.QueryString<>"" Then
For Each SQL_Get In Request.QueryString
For SQL_Data=0 To Ubound(SQL_inj)
if instr(LCase(Request.QueryString(SQL_Get)),Sql_Inj(Sql_DATA))>0 Then
Response.Write "<script Language=javascript>alert('注意:请不要提交非法请求11!');history.back(-1)<-/Script>"
Response.end
end if
next
Next
End If
'If Request.Form<>"" Then
'For Each Sql_Post In Request.Form
'For SQL_Data=0 To Ubound(SQL_inj)
'if instr(LCase(Request.Form(Sql_Post)),Sql_Inj(Sql_DATA))>0 Then
'Response.Write ""
'Response.end
'end if
'next
'next
'end if
'If Request.Cookies<>"" Then 
'For Each sql_cook In Request.Cookies 
'For SQL_Data=0 To Ubound(SQL_inj) 
'If Instr(LCase(Request.Cookies(sql_cook)),SQL_Inj(SQL_Data))<>0 Then 
'Response.Write ""
'Response.end
'End If 
'Next 
'Next 
'End If 

%>

转自:红客联盟

相关文章:

  • Linux 服务器安全配置
  • MSSQL安全设置的具体步骤和方法
  • Linux菜鸟入门级命令大全
  • ubuntu 10.10正式版
  • 菜鸟入门 Ubuntu 常用命令收集
  • 一系列测试技术
  • Web安全测试知多少
  • 常用的网站功能测试方法
  • dedecms 留言本 XSS 漏洞
  • 40位MD5加密的破解方法
  • ASP常用数据库连接及操作的方法和技巧
  • php一句话免杀
  • 初学PHP的18个基础例程
  • PHP 函式索引 967 个函式
  • [转:IBM]编写安全PHP应用程序的七个习惯
  • 【node学习】协程
  • emacs初体验
  • iOS 系统授权开发
  • JS实现简单的MVC模式开发小游戏
  • maven工程打包jar以及java jar命令的classpath使用
  • PHP 的 SAPI 是个什么东西
  • Python爬虫--- 1.3 BS4库的解析器
  • React as a UI Runtime(五、列表)
  • React-Native - 收藏集 - 掘金
  • ubuntu 下nginx安装 并支持https协议
  • windows下使用nginx调试简介
  • 给github项目添加CI badge
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 经典排序算法及其 Java 实现
  • 前端临床手札——文件上传
  • 思维导图—你不知道的JavaScript中卷
  • kubernetes资源对象--ingress
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • (Java数据结构)ArrayList
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (转) 深度模型优化性能 调参
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .NET轻量级ORM组件Dapper葵花宝典
  • .NET项目中存在多个web.config文件时的加载顺序
  • @ 代码随想录算法训练营第8周(C语言)|Day53(动态规划)
  • [ MSF使用实例 ] 利用永恒之蓝(MS17-010)漏洞导致windows靶机蓝屏并获取靶机权限
  • []我的函数库
  • [Android] Android ActivityManager
  • [boost]使用boost::function和boost::bind产生的down机一例
  • [C#]手把手教你打造Socket的TCP通讯连接(一)
  • [C++] 如何使用Visual Studio 2022 + QT6创建桌面应用
  • [Google Guava] 1.1-使用和避免null
  • [JavaEE] 线程与进程的区别详解
  • [java刷算法]牛客—剑指offer链表有环的入口、反转链表、合并排序链表