hosts劫持实现域名跳转

文章目录

  • 前言
  • 一、初次见面
  • 二、实现步骤
    • 1.找到hosts文件
    • 2.要跳转的网站
    • 3.被劫持的网站
    • 4.如何解决访问不了
  • 总结

前言

关于域名跳转有很多办法 例如:Kali Ettercap 中间人DNS劫持

通过修改本地 hosts文件 重定向 也可以实现跳转


今天通过修改hosts实现浏览器跳转指定的网站

科普
hosts是没有扩展名的一个文件,我们可以用记事本打开,它作用是把一些网址和域名记录下来,就像电话本一样 下次用可以从里面查,当我们要访问某个网站的时候,系统会先自动从hosts文件找是否有对应的IP地址和域名,有的话就会立即打开对应的网页,没有的话就会将网址交给DNS服务器解析,返回实现本地域名与IP之间的映射。


一、初次见面

嘿嘿,大家好我是忆梦 新手第一次发帖,做的不好的地方还请大家见谅,入驻CSDN已经有两年多了
不禁感慨,时间过的真快,这么久了也没发过帖子,因为我还是小菜 哈哈,一路上跟着前辈们学习也会了许多,趁着国庆假期来更新,祝屏幕前的你,国庆节快乐呀 !!!


二、实现步骤

1.找到hosts文件

hosts劫持实现域名跳转_第1张图片

文件路径为C:\Windows\System32\drivers\etc

2.要跳转的网站

hosts劫持实现域名跳转_第2张图片

我们先ping下拿到要跳转指定网站的IP地址 这里只能是http协议的网站哦

3.被劫持的网站

hosts劫持实现域名跳转_第3张图片

拿到IP地址后 然后再打开hosts文件改成这样对应的形式 然后保存 注意 IP和域名 中间要空一格

然后访问浏览器 你就会发现访问不了 ? ? ?

就像这样 。。。

hosts劫持实现域名跳转_第4张图片


4.如何解决访问不了

不要慌 办法总比困难多嘛!
第一种办法到绑定域名的控制面板添加这个域名
第二种也是我今天给大家讲的
大家可以发现 通过这样访问必然是不行的
这个时候 我们只要把hosts对应的ip改成自己的路由器后台地址是不是又可以访问了
很明显内网ip可以访问 这还简单? 我们可以做个软件 开放80端口 从本地ip访问直接跳转到网站上
哈 废话不多说 直接操作 这里我用了GO Python也行 是语言都行啦 不要纠结这个啦 重要在原理啦

GO版本


package main

import (
	"net/http"
)

func main() {
     
	content := ""
	http.HandleFunc("/", func(rw http.ResponseWriter, r *http.Request) {
     
		rw.Write([]byte(content))
	})
	http.ListenAndServe("0.0.0.0:80", nil)
}

Python版本

from flask import *

app = Flask(__name__)

@app.route("/", methods=["GET"])
def Jump():
    return f''

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=80)

这里 我直接使用了 0.0.0.0:80 全部的网卡IP地址都可以访问这个80端口
记得把hosts里的IP换成本地IP
好啦运行 就可以跳转啦 !!!
哎呀 B站不能投 被退回啦 就不演示了

总结

此方法只对http协议有效果 网站都必须是http协议才能成功哦
可以做成软件 咳咳 你们懂的 感谢大家的阅读 初次发布 以后会更好的 希望能帮到你!!!

你可能感兴趣的