过滤常见APP和邮箱

在DNS劫持里,不劫持常见的应用APP和邮箱APP。该怎么处理?

先对比APP和网页请求的区别,上两张图:

打开百度页面的抓包:

打开金山卫士的抓包:

都是GET请求,在金山卫士里的User-Agent里也出现了Mozilla/4.0  MSIE,当然打开金山卫士并没有用浏览器,直接打开桌面的APP。

而在百度抓包里的User-Agent有Mozilla/5.0,Chrome,Safari,而我打开百度用的是Chrome。

从抓包上无法区分APP还是浏览器。那么过滤采用的方法就是网页和APP一起过滤了。


关于邮件APP的过滤:邮件的请求不同于普通的APP,主要存在以下三种访问方式:

HTTP 访问类型,不需要客户端程序,通过网页访问邮箱
SMTP全称 “Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。
IMAP全称是Internet Mail Access Protocol,即交互式邮件存取协议,它是跟POP3类似邮件访问标准协议之一。不同的是,开启了IMAP后,您在电子邮件客户端收取的邮件仍然保留在服务器上,同时在客户端上的操作都会反馈到服务器上,如:删除邮件,标记已读等,服务器上的邮件也会做相应的动作。所以无论从浏览器登录邮箱或者客户端软件登录邮箱,看到的邮件以及状态都是一致的
POP3 Post Office Protocol 3的简称,即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的

那么过滤现在就好弄了,比如要过滤金山卫士和邮箱APP,构造数组如下:

 char_t filter_dn[][20]=
  {
	"jinshan"
    "mail",
    "imap",
    "smtp",
    "pop",
  };
过滤函数如下:
for(i=0; i<sizeof(filter_dn)/sizeof(filter_dn[0]); i++)
{

  str_dn_tmp = strstr(dns_domain, filter_dn[i]);
  if( str_dn_tmp != NULL )
  {
	dns__app = 1;
    printf("filter_dn : filter dn{%s}\n", filter_dn[i]);    
    memset(app_domain,0,strlen(app_domain));
    strncpy(app_domain,dns_domain,strlen(dns_domain));
	printf("\napp_domain=%s\n",app_domain);
	
  }
}

如果没有意外这样应该就可以过滤某些APP了。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值