1. http服务器怎么阻止恶意请求
当你的操作超过他的权限,比如服务器设置禁止游客下载,禁止更改网页,或者像出于网络安全,禁止访问一些国外网站等,你强制进行这些操作,网页就会提醒403错误的不有好界面,或者有好界面(会提醒该网站正在维护中,或地址已改变等等),其他我不懂了 http://www.mycaogen.com/thread-2479-1-3.html
2. 如何实现监控并拦截整个局域网的http和https的请求
如果你的应用使用SSL证书,则需要决定如何在负载均衡器上使用它们。
单服务器的简单配置通常是考虑客户端SSL连接如何被接收请求的服务器解码。由于负载均衡器处在客户端和更多服务器之间,SSL连接解码就成了需要关注的焦点。
2、有两种主要的策略
第一种是我们选择的模式,在haproxy这里设定SSL,这样我们可以继续使用七层负载均衡。SSL连接终止在负载均衡器haproxy ----->解码SSL连接并发送非加密连接到后端应用tomcat,这意味着负载均衡器负责解码SSL连接,这与SSL穿透相反,它是直接向代理服务器发送SSL连接的。
第二种使用SSL穿透,SSL连接在每个tomcat服务器终止,将CPU负载都分散到tomcat服务器。然而,这样做会让你失去增加或修改HTTP报头的能力,因为连接只是简单地从负载均衡器路由到tomcat服务器,这意味着应用服务器会失去获取 X-Forwarded-* 报头的能力,这个报头包含了客户端IP地址、端口和使用的协议。
有两种策略的组合做法,那就是第三种,SSL连接在负载均衡器处终止,按需求调整,然后作为新的SSL连接代理到后台服务器。这可能会提供最大的安全性和发送客户端信息的能力。这样做的代价是更多的CPU能耗和稍复杂一点的配置。
3. 如何设置拦截指定网站
用超级眼监控软件家庭版,拦截指定网站特别方便,可以按类别批量拦,也可以自己输入网址,想拦哪些拦哪些,拦了后肯定不能浏览了。
4. 怎样设置burpsuite拦截火狐浏览器所有http数据请求
方法/步骤
打开浏览器,点击浏览器菜单栏,找到“工具”点击 Internet选项,设置浏览器代理地址为127.0.0.1,端口8080
打开burpsuite确定设置的代理地址与浏览器一致。
打开浏览器,打开一个网页,会看到打开的网页浏览记录都经过了burpsuite。
当Intercept is on时,表示已经开启拦截功能。
在网站可输入的地方,例如搜索,输入“2015”,开启burpsuite拦截功能,可看到为post请求,最后面的就是提交的数据。
右键选择send to repeater或者快捷键ctrl+r 把拦截的数据包到repeater项中,直接修改数据,如把原本要搜索的项“2015”改为“2016”,点击go来提交,那么响应回来的数据就是改修后的页面和信息。(burpsuite的抓包,拦截,修改)
5. 如何拦截网站
现在各种网络弹出式广告的引入的确为网民增加了不少的烦恼,而且我们小小的带宽就被和种广告所吞蚀得所剩无几。广告拦截程序就是为这用户的这种需要应运而生,为你去除不胜其烦的广告之余还无形中加快了你的上网浏览速度。我们今天采用了三款广告拦截程序,分别是:
1.3721上网助手 4.3版
2.超级兔子IE专家2004升级试用版
3.Zero Popup 7.87英文共享版
测试硬件:
cpu 毒龙950
内存 sdr 192M(128M+64M)
硬盘 西数 40G 5400rpm 2m
显卡 MSI TNT2 Pro 32M
声卡 主板自带 ac97声卡
系统 winxp 简体中文版
网卡 Olicom Ethernet PCIII 10/100 Adapter (OC-2326)
网络连接采用校园局域网,通过网关连接Internet,速度为10MB
浏览器:
1.Microsoft Internet Explorer 6.0
2.MYIE 2.0final版
3.腾讯 TT 1.1beta 版
这三个都是采用IE内核的浏览器, MYIE和TT自带有弹出窗口管理器,在测试过程中暂时先停用。
启动
Zero Popup和3721上网助手都可以作为IE的插件随IE启动而启动,3721上网助手在IE的工具栏上加入了快捷工具,非常方便使用。
Zero Popup除了可以随IE启动外还可以随IE关闭,节省资源。只可惜是英文版,对于英文不好的菜鸟来说有点困难。
IE专家只能随系统启动或是手动启动。
3个软件都可以在IE中对弹出式广告进行有效的拦截。
Zero Popup虽然只有141KB的体积,但是它的拦截功能很全面的,除了可以拦截IE的广告之外还可拦截系统服务Messenger弹出来的广告,甚到横幅广告出不放过,尽显杀手本色。但是却不用拦截FALSH,也没有禁止网页背景音乐和视频播放功能,而且只能随IE启动,在MYIE和TT中却没有效果。
超级兔子IE专家虽然可以在IE中对弹出式广告窗口进行封杀,但同时用户点击的弹出窗口也一律封杀了,(比如http://www.51live.com上的点击弹出窗口)作为一个优秀的广告拦截软件来说实在是一个大大的bug。而且它只可以清除部分的FLSAH动画。它较有特色的一项功能就是在浏览网页时对Gif动画图片只显示第一幅图片,相对于Zero Popup单纯禁止GIF动画来说更具人性化。在MYIE和TT中也无效。
3721上网助手虽然是拦截功能相比于其它的两款较少,但是对于我们浏览网页来说已经足够了,而且它的白名单设置要比其它的2个简单明了。相比于其它的2个,上网助手可以拦截MYIE和TT上的FLASH动画,但不能拦截弹出窗口。
遗憾的是没有一个可以拦截MYIE和TT上的弹出窗口。
其它功能
1.上网助手
上网助手为一个其于网络的IE保护程序,除了广告拦截功能之外还提供了清除地址栏,清除上网记录,清除垃圾文件,修复浏览器,即时保护IE,屏蔽恶意网站等多多的功能,在这3个软件当中它提供的功能最为全面也最多。
2.超级兔子IE专家
超级兔子IE专家也可以修复IE,禁止FSO系统和使用脚本,保护注册表,备份恢复注册表等功能,作为超级兔子魔法设置的一个组件,也继承了其好用的功能。
作为一个专门的网页广告拦截程序来说也可以设置自动清除上网记录和地址栏,cokies,缓存,收藏夹功能,表单和密码功能,保护了你的上网隐私。
总结
在这次测评当中,唯有3721上网助手可以在多个浏览器中使用,在MYIE和TT中虽然不能拦截弹出广告,但可以屏蔽FLASH动画,这是其它的2个做不到的。况且MYIE和TT都自带了弹出窗口过滤程序,再配合上网助手就可以达到完美的拦截网页广告效果,而且它拥有强大的浏览器保护功能,使你上网免受广告的骚扰之外也再加放心。
超级兔子IE专家虽然也可以拦截弹出式广告,但是连用户正常点击的弹出窗口也一并封杀了,而且只可以在IE中使用,提供的功能也比3721上网助手要少得多。
Zero Popup的拦截功能非常强大,除了可以拦截IE广告之外,还可以拦截Messenger弹出广告,横幅广告,漂浮广告,但只能在IE中使用,也不能拦截FLASH。让人感到遗憾不已。(出处:PConline)
6. UIWebView怎么拦截到网页里面JS发起的Ajax请求
目前iOS与JS通信貌似只有两种方法:用webView的:方法主动获取,或者是shouldStartLoadWithRequest:回调被动接受,似乎没有其他的方式了 。由于Ajax没有刷新当前页面,所以shouldStartLoadWithRequest回调不会被执行,这种情况只能通过修改web的代码来解决,思
路是改变页面的window.location,把自己需要的参数放在url里,在Ajax执行的时候去修改window.location
7. 拦截浏览器发送的请求,都有哪些方法
socket hook 是可行性很高的,
不然,你难道用 IMD 啊,那在底层,调用不方便
8. 怎么拦截到网页里面JS发起的Ajax请求
1、WebView 在没发出一个请求前,会调用如下方法,
可以尝试在这里处理。
-[NSURLCache cachedResponseForRequest:]
2、再就是看看能否使用 NSURLProtocol 拦截。
9. Java实现拦截HTTP请求的几种方式
在Java的服务端开发当中,拦截器是很常见的业务场景,这里对Java开发当中几种常见的拦截器的实现方式进行记录和分析。案例说明基于Spring Boot环境。
一:实现javax.servlet.Filter接口(使用过滤器方式拦截请求)
import org.springframework.stereotype.Component;import javax.servlet.*;import java.io.IOException;import java.util.Date;@Componentpublic class TimeInterceptor implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {System.out.println("time filter init");}@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {System.out.println("time filter start");long start = new Date().getTime();filterChain.doFilter(servletRequest, servletResponse);System.out.println("time filter 耗时:"+(new Date().getTime()-start));System.out.println("time filter finish");}@Overridepublic void destroy() {System.out.println("time filter destroy");}}
如使用@Compent注解声明不需要加入其它配置即可使得拦截器生效,但是默认拦截/*,会拦截所有请求。
二:使用@Bean注入自定义拦截器,依然上面的代码,去掉@Compent注解,创建TimeWebConfig配置类:
import org.springframework.boot.web.servlet.FilterRegistrationBean;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import java.util.ArrayList;import java.util.List;@Configurationpublic class TimeWebConfig {@Beanpublic FilterRegistrationBean timeFilter(){FilterRegistrationBean registrationBean = new FilterRegistrationBean();TimeInterceptor interceptor = new TimeInterceptor();registrationBean.setFilter(interceptor);List<String> urls = new ArrayList<>();urls.add("/user/*");registrationBean.setUrlPatterns(urls);return registrationBean;}}
上面这两种拦截请求的实现是基于JavaEE提供的Filter接口实现的,缺点在于,该拦截器实际上是一个过滤器,执行代码的方法doFilter只提供了request,response等参数,当请求进入被过滤器拦截的时候,我们并不知道这个请求是由哪个控制器的哪个方法来执行的。
三:使用springMVC提供的拦截器,实现org.springframework.web.servlet.HandlerInterceptor接口:
创建自定义的拦截器:
import org.springframework.stereotype.Component;import org.springframework.web.method.HandlerMethod;import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.util.Date;@Componentpublic class MyInterceptor implements HandlerInterceptor {@Overridepublic boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object handler) throws Exception {System.out.println("preHandler");System.out.println(((HandlerMethod) handler).getBean().getClass().getName());System.out.println(((HandlerMethod) handler).getMethod().getName());httpServletRequest.setAttribute("start", new Date().getTime());return true;}@Overridepublic void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {System.out.println("postHandler");Long start = (Long) httpServletRequest.getAttribute("start");System.out.println("time interceptor 耗时:"+(new Date().getTime()-start));}@Overridepublic void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {System.out.println("afterCompletion");Long start = (Long) httpServletRequest.getAttribute("start");System.out.println("time interceptor 耗时:"+(new Date().getTime()-start));System.out.println("ex is:"+e);}}
创建配置类:
import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.InterceptorRegistry;import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;@Configurationpublic class WebConfig extends WebMvcConfigurerAdapter {@Autowiredprivate MyInterceptor interceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(interceptor).addPathPatterns("/user/*").excludePathPatterns("/blog/*");}}
此种方式的拦截器当中我们能够获取拦截的请求对应的类和方法的相关信息,缺点在于该handler对象无法获取具体执行方法的参数信息。
四:利用Spring的切面(AOP)实现拦截器:
引入jar包:
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-aop --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency>
创建切片类:
import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import org.springframework.stereotype.Component;import java.util.Date;@Aspect@Componentpublic class TimeAspect {@Around("execution(* com.qinker.controller.UserController.*(..))")public Object handlerControllerMethod(ProceedingJoinPoint point) throws Throwable {System.out.println("time aspect start");long start = new Date().getTime();Object[] args = point.getArgs();for (Object obj : args) {System.out.println("arg is:"+obj);}Object obj = point.proceed();//具体方法的返回值System.out.println("aspect 耗时:"+(new Date().getTime()-start));System.out.println("time aspect end");return obj;}}
aspectj基于AOP实现的拦截器功能十分强大,具体详解请参考spring官网网站的文档。
10. 如何屏蔽非法的WEB请求
开启网络防火墙,一般就可以自动屏蔽的,电脑的话直接安装保护的卫士或者杀毒软件,路由器的话开启路由器防火墙