请教如何appscan 拒绝恶意请求的Socket连接

对于semer来说,不管你是新手还是老手,你的账户结构有多完美,关键词和创意的质量度有多高,只要有同行的恶意点击,原本千辛万苦省下来的推广成本一下被拉高,尽管百度有过滤无效点击功能,但“狡猾”的同行总能想出办法来。严重者到中午预算就用完,本人就亲身经历过,当时非常的无语和愤怒。我们唯一能做到的就是屏蔽恶意点击的IP(百度推广后台有屏蔽项),但IP是会变化的,今天屏蔽了一个IP,明天不一定还是这个IP,但幸运的是某些特殊IP是不变的(如VPN代理服务器);某些IP即便变化了,但有规律可循。由于本人是技术出身,自己弄了网站的IP统计数据库(可以找你公司的web开发人员写,非常简单),经过长期的数据观察和忍受了不必要的“成本”开销后,我总结出了2个方法来应对“恶意点击”,目前可以肯定地说,至少减少了1半以上的恶意点击。首先你的网站得有自己的IP统计数据库,其次安装有百度统计,百度统计有个很遗憾的缺点是看不了访客IP,所以你还得安装51la或cnzz。总共是三个,他们不会给服务器带来什么负荷,不用担心,因为百度统计、51la和cnzz是基于客户端的javascript来获取信息的,不是通过web服务器。以下是我所用的方法:1.针对不变化的IP恶意点击:如图:这是我IP数据库同一个IP的访问记录,当我发现存在一个这样的IP的时候,就去百度统计和51la的访问明细去看访客特征,如果换了很多关键词,屏蔽之。但如果这个IP在51la找不到了,超过所能保存最多的记录数,你只要扫描此IP的1723端口即可(网上有在线扫描,也可直接用php的socket连一下),如果此端口开放,屏蔽之。可想而知,这个同行真够“阴险”,连vpn代理也用上了(何为vpn代理?百度之),如果端口没有开放,先记住此IP,待其再出现的时候,通过百度统计看其特征再做决定,毕竟我们也不想“错杀”无辜。以上过程可以做到自动化,例如发现1723端口开放的IP点进来了,即时发送Email通知负责人。因为能被同行使用的vpn的代理服务器是有限的,只要屏蔽多了,他们也拿你没办法。2.针对会变化的IP恶意点击:这种情况你得有充足的访问数据作为前提,并需要很大的耐心。一般来说你的同行的宽带ip即使变化了,也只是在IP的第三段或第四段微量变化。之所以说需要很大的耐心,是因为你必需花很长时间来观察每一个进来的IP的访客特征,如果发现有可疑的IP,如118.244.150.143,就sql查询like “118.244.150.*”或”118.244.1*”,查询结果有很多条记录的话,就得引起注意了,可扫描其1723端口,和百度此IP,看是否有同行利用此类相近的IP发布过信息,我就是这样从过去的点击记录发现有一个IP,当天有同行就用此IP发布过信息,由此确定了这类恶意点击是其所为。如图这是我发现其恶意点击前的部分记录:当确定是同行之后怎么办,屏蔽之。 第2种情况,确实辛苦了点,如果没有专人值守,不做也罢。但检测是否vpn代理的功能得至少要有的,找个开发人员1天就可搞出。其实最好的办法是大家相互不点,省钱省力,公平竞争,把焦点集中在产品和服务上,而不是做这种无意义的事情,做人得善恶分明。希望看过我这篇文章的人,能节省到成本,并一起努力构建和谐的百度推广生态环境,拒绝恶意点击,从我做起。 & &作者:黄永辉浏览(11,725)分享到:
(点击这里)socket available 方法请教
package com.
import java.io.IOE
import java.io.InputS
import java.io.PushbackInputS
import java.net.InetSocketA
import java.net.S
public class testclient {
private InputS
//private PushbackInputS
private boolean isRead =
private byte[] data = new byte[1024 * 10 * 10];
private long notDataTime = 1000 * 3;
private long time = 0;
void startClient(){
while(true){
if(!validConnection(socket)){
createConnection();
if(validConnection(socket)){
if(isRead){
* 正确读取
* int c = (int) pin.read();
if(c & 0){
pin.unread(c);
int len = pin.available();
if(len& 0){
int temlen = pin.read(data,0,len);
System.out.println("收到服务端数据:" + new String(data,0,temlen));
/**获取输入流中的有效字节 **/
int len = in.available();
if(len& 0){
int temlen = in.read(data,0,len);
System.out.println("收到服务端数据:" + new String(data,0,temlen));
if(time == 0){
= System.currentTimeMillis();
long currentTime = System.currentTimeMillis();
if((currentTime - time ) & notDataTime){
System.out.println("3s 没有收到数据,断开连接");
shutdown();
} catch (IOException e) {
e.printStackTrace();
shutdown();
void createConnection(){
socket = new Socket();
socket.connect(new InetSocketAddress("127.0.0.1",10011));
System.out.println("连接服务端成功!");
in = socket.getInputStream();
// pin = new PushbackInputStream(in);
} catch (IOException e) {
e.printStackTrace();
boolean validConnection(Socket socket){
return (socket != null && socket.isBound() && socket.isConnected());
void shutdown(){
if(socket !=null){
socket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
public static void main(String[] args) {
new testclient().startClient();
package com.
import java.io.IOE
import java.io.OutputS
import java.net.InetSocketA
import java.net.ServerS
import java.net.S
import java.util.T
import java.util.TimerT
public class testserver {
private OutputS
void createserver(){
ServerSocket server = new ServerSocket();
server.bind(new InetSocketAddress("127.0.0.1",10011));
System.out.println("start server.");
socket = server.accept();
System.out.println("新连接到到达!");
out = socket.getOutputStream();
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
int i = 0;
public void run() {
if(i & 2 || i & 5){
out.write(("发送给客户端数据 " + i ).getBytes());
out.flush();
System.out.println("不发送数据 " + i);
} catch (IOException e) {
System.out.println("发送数据异常,断开客户端连接!");
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
void shutdown(){
if(socket !=null){
socket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
if( out != null){
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
public static void main(String[] args) {
new testserver().createserver();
客户端连接服务端,服务端开始发送数据,如果客户端3s没有收到数据,那么中断连接,然后再次尝试重新建立连接。
&当客户端3s没有数据中断连接后,in.available方法返回永远是0 了。
永远是零是什么意思?你shutdown之后重新connect还是零?您访问的页面包含有恶意内容,可能危害到您的上网安全,已阻止”跟杀毒软件无关,详细见补充。-学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
> 信息中心 >
您访问的页面包含有恶意内容,可能危害到您的上网安全,已阻止”跟杀毒软件无关,详细见补充。
来源:互联网 发表时间: 3:26:08 责任编辑:王亮字体:
为了帮助网友解决“您访问的页面包含有恶意内容,可能危害到您的上网安全,已阻止”跟杀毒软件无关,详细见补充。”相关的问题,学网通过互联网对“您访问的页面包含有恶意内容,可能危害到您的上网安全,已阻止”跟杀毒软件无关,详细见补充。”相关的解决方案进行了整理,用户详细问题包括:
进同样的页面就一直跳出来提示“您访问的页面包含有恶意内容,已阻止您好?跟杀毒软件无关,我的电脑在用普通的wlan无线网络连接上网可以正常打开网页,使用店里面的无线网络连接,但是同样的电脑,请问下这种怎么处理呢!”,可能危害到您的上网安全
,具体解决方案如下:解决方案1:
禁用它即可有其他问题欢迎到电脑管家企业平台咨询.com/c/guanjia" title="http.baidu://zhidao.baidu,这些软件有可能也会拦截网页出现你说的提示2://zhidao,请看下Chrome自带的插件――类似过滤功能的、如果你使用了Chrome浏览器.com/c/guanjia/" target="_blank">http!腾讯电脑管家企业平台、检测当前你的浏览器插件:1,那么首先看下你当前的系统是否安装了其他的安防软件://zhidao,对于你的问题:3、如果排除不是杀毒软件的某个功能.baidu,看看是否有类似于广告拦截的插件你好
1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答
相关文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 学网 版权所有
京ICP备号-1 京公网安备02号网络安全试题及答案_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
网络安全试题及答案
上传于|0|0|文档简介
&&适合初级网络安全测试
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩1页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢}

我要回帖

更多关于 socket 主动拒绝连接 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信