瞒天过海?一封钓鱼邮件的玩法

本文没有什么实际的技术含量,只是好久没有碰到钓鱼邮件了,随手翻看了一下,做个简单的记录。

7bf8f35f1287f971fb6d7d26ffaf6421.png

  1. 钓鱼目的

早上收到一封邮件,内容如下:

1f66122e25244ede5e29bd247e521037.png

因为是外部邮件,结合邮件内容,可以很容易的判断这是一封钓鱼邮件。我们看一下链接所指向的站点:

22144d504f3fce5314160c2ea61542aa.png

网页上所有导航都不可点,意图很明显,只是用来搜集邮箱账号。

2. 躲避检测手法

按常理,这样明显的钓鱼邮件,应该很容易被拦截才对,但是并没有被系统拦截和标注,查看邮件源码:

0f99f54d1209a9a84e07ecb31bfca0d2.png

首先为了躲避普通的文本过滤,页面里的文字统一采用16进制编码方式,转成文本,内容大致如下:

f932093962f0e34ea11cb1d08efe3b28.png

可以看到,即使转成文本,内容仍然进行了语义层面的混淆。

为了在视觉上看起来很规范,将不想让用户的看到的内容使用 css 样式进行隐藏:

  • display:none

  • opacity:0

  • fontSize:0

测试注意事项

钓鱼网页会有利用浏览器漏洞注入木马的风险,所以在用浏览器打开页面之前最好先下载页面源码进行分析。可以使用简单的爬虫或者下载器或者代理程序。简单测试的话,临时写几行代码加上手工更容易一些。

315226c873aa2941b63fc295dd456000.png

The     EndThe     End

The     End

欢迎关注

以下是一个简单的36计编程示例,可以让用户查看每个计谋的详情: 1. 创建一个包含36个计谋的列表,每个计谋都有一个唯一的名称和详细描述。 2. 显示一个主菜单,让用户选择要查看的计谋。用户可以输入计谋的名称或编号来选择计谋。 3. 如果用户输入的名称或编号不存在,提示用户重新输入。 4. 如果用户选择了一个计谋,显示该计谋的名称和详细描述。 5. 提供一个选项让用户返回主菜单或退出程序。 6. 可以将此程序扩展为包括更多功能,如搜索计谋、添加新计谋等。 以下是示例代码: ``` # 定义36计列表 thirty_six_strategies = [ {"name": "瞒天过海", "description": "利用谎言、假象等手段蒙骗对手,达到出奇制胜的目的。"}, {"name": "围魏救赵", "description": "用迂回的方式来攻击对手的弱点,使其分心,从而保护自己的利益。"}, {"name": "借刀杀人", "description": "借助他人的力量来打败对手。"}, # ... 其他34计 ] # 显示主菜单 def show_menu(): print("请选择要查看的计谋:") for i, strategy in enumerate(thirty_six_strategies): print(f"{i+1}. {strategy['name']}") print("0. 退出程序") # 显示计谋详情 def show_strategy_detail(strategy): print(f"{strategy['name']}\n{strategy['description']}\n") # 主程序 while True: show_menu() choice = input("请输入计谋名称或编号:") if choice == "0": break try: choice_index = int(choice) - 1 strategy = thirty_six_strategies[choice_index] show_strategy_detail(strategy) except (ValueError, IndexError): print("输入有误,请重新输入。") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值