android根据ip获取域名_Android判断ip为DNS劫持

网络劫持

我们经常会遇到一种case,就是我们的域名通过dns解析之后,实际返回的ip并不是我们真正的服务器ip,此时怎么分析确定呢?

java接口函数

InetAddress inetAddress = InetAddress.getByName("www.baidu.com");

String ip = inetAddress.getHostAddress();

我们常见的网络库,最终都是通过这个接口去获取ip的,通过hook这个接口函数,打印ip,能发现确实有一些不是我们自己的服务器ip

nslookup

首先使用win中的nslookup命令,用于从dns服务器解析ip对应的域名,或者根据域名解析ip

nslookup 202.98.24.122

能够简单的看下ip的域名,多数情况下看不到,怎么办?

nmap

aaa.jpg

使用nmap可以对ip进行分析,可以看到此ip开放了53端口,具备DNS服务器的特征,再观察到Haproxy是一种负载均衡服务器的特征,基本上判断出此ip为DNS服务器的负载均衡跳转服务器

怎么解决

遇到这种服务器跳转ip不会有问题,因为它还会把真正的ip返回给你,如果是其他的真正的被劫持的ip怎么办?

使用HttpDns解决,这里不细讲HttpDns的原理,网上都有

当然终极解决办法是Https

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值