诡异的 "密码取回" 邮件问题
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html
内部邀请码:C8E245J (不写邀请码,没有现金送)
国内私募机构九鼎控股打造,九鼎投资是在全国股份转让系统挂牌的公众公司,股票代码为430719,为“中国PE第一股”,市值超1000亿元。
------------------------------------------------------------------------------------------------------------------------------------------------------------------
大部分系统中都有“找回密码”的功能,我们的平台也做了此功能,用户可通过 短信,邮件 找回密码。
其中对于邮件找回密码的方式遇到奇特的问题,记录下,看谁有遇到过,一起解决。
【现象】
当用户在界面点击“忘记密码”时,需要输入自己的登录的用户名,系统将按照之前预留的邮箱发送一封带有链接的邮件。用户点击该链接后即可修改密码,而且该地址是一次有效。在测试环境测试(不能链接公网)测试时,没有问题,但是以上到正式环境(内外联通)后,发现部分用户点击收到的链接时出现“找回密码链接已失效!”。
用户非常肯定的是自己重来没有点击过这个链接,但是第一次点击链接都失效了?奇怪的问题。
用户收到的邮件通知
链接被使用过一次后,再点击时出现的情况(部分用户没有点击也出现此种情况)
【重现】
在环境中重新注册个用户 test-xjd 发送邮件,正常的是 sina 邮箱没有此问题,163、qq 邮箱都存在同样的问题。
检查前置机的访问记录,发现该邮件被发出去后,大约半分钟左右就会被访问,导致后续真正的用户访问时链接失效了。
WHY? TELL ME WHY ?
【解决方法】
1、使用前置机将该类访问禁止掉。过滤条件 Mozilla/4.0 。
2、修改链接为短链接,同时链接里面有很多敏感信息泄露。需要整体处理掉。
【后续】
根据访问日志,提取出访问的IP列表如下,如果谁知道这些IP时谁的,或是哪个单位的,请告知一下。
- 101.226.102.97
- 101.226.33.200
- 101.226.33.202
- 101.226.33.220
- 101.226.33.223
- 101.226.33.227
- 101.226.33.228
- 101.226.33.238
- 101.226.51.226
- 101.226.51.228
- 101.226.65.104
- 101.226.66.173
- 101.226.66.180
- 101.226.66.187
- 101.226.66.192
- 101.226.89.116
- 101.226.89.119
- 101.226.89.123
- 101.226.89.64
- 101.226.89.69
- 112.64.235.247
- 112.64.235.253
- 112.64.235.254
- 112.64.235.86
- 112.64.235.91
- 180.153.114.199
- 180.153.114.200
- 180.153.163.187
- 180.153.163.209
- 180.153.201.212
- 180.153.201.66
- 180.153.205.253
- 180.153.205.254
- 180.153.206.16
- 180.153.206.17
- 180.153.206.21
- 180.153.206.23
- 180.153.206.31
- 180.153.206.38
- 180.153.214.178
- 180.153.214.180
- 180.153.214.181
- 180.153.214.182
- 180.153.214.188
- 180.153.214.190
- 180.153.214.191
- 222.73.77.54
- 222.73.77.55
WHO CAN TELL ME WHY? TELL ME WHY ?
诡异的 "密码取回" 邮件问题的更多相关文章
- SSH项目里面 忘记密码的邮件发送功能
package com.xxx.util; import java.util.Date; import java.util.Properties; import javax.mail.Address; ...
- svn自动发用户名密码到邮件(明文密码)
#!/bin/sh touch testlist cat /dev/null > testlist grep "=" passwd |grep -v "#" ...
- javaWeb实现使用邮箱邮件找回密码功能
JSP+Jmail+JavaBean 发邮件(转)2010-08-23 18:052007年04月14日 14:32/* * SendMail.java * * Created on 2007年3月3 ...
- Linux中Postfix邮件认证配置(五)
Postfix+Dovecot+Sasl工作原理 1.A用户使用MUA客户端借助smtp协议登陆smtpd服务器,需要先进行用户和密码认证,而SMTPD服务器端支持sasl认证,例如有一个sasl客户 ...
- 应用层之E-mail服务及javaMail邮件发送的知识总结
关于Email服务你需要知道的知识点: 概述: 今天来介绍一下应用层的电子邮件服务,我们每天几乎都在用,电子邮件(email)服务也是一种基于C/S模式的服务,它采用的是一种"存储-转发&q ...
- 在Django中进行注册用户的邮件确认
之前利用Flask写博客时(http://hbnnlove.sinaapp.com),我对注册模块的逻辑设计很简单,就是用户填写注册表单,然后提交,数据库会更新User表中的数据,字段主要有用户名,哈 ...
- (进阶篇)PHP+Mysql+jQuery找回密码
通常所说的密码找回功能不是真的能把忘记的密码找回,因为我们的密码是加密保存的,一般开发者会在验证用户信息后通过程序生成一个新密码或者生成一个特定的链接并发送邮件到用户邮箱,用户从邮箱链接到网站的重置密 ...
- jboss eap 6.2+ 版本中 加密datasource密码等敏感信息
默认情况下,在jboss eap 6.2+ 管理控制台创建datasource后,会在standalone.xml(独立模式)或host.xml(域模式)中以明文保存相关敏感信息. 这会给服务器留下安 ...
- redmine 配置邮件发送为async后,不能发送邮件(转载)
通过参考:http://www.oschina.net/question/2005703_16688 之前configuration.yaml文件中email的相关配置如下: production: ...
随机推荐
- [LabVIEW架构]ActorFramework(二)
前言 在上一个文章中,我们介绍了一下LabVIEW中AF的基本概念,本讲将以上一次的例子来讲解LabVIEW中的实现 正文 范例说明 假定两个人,一个作为老师,一个作为学生.学生每天早上给老师发送一封 ...
- js-xlsx操作excel表格
1导入与导出功能实现 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- leetcode 136 137 Single Number
题目描述(面试常考题) 借助了异或的思想 class Solution { public: int singleNumber(vector<int>& nums) { ; ; i ...
- LinkedList 源码分析
LinkedList :双向链表结构, 内部存在frist节点 和 last节点.通过改变 首节点和 尾节点的引用来实现新增和修改 有一个内部类: //节点类,内部包括前节点和后节点,和数据项 // ...
- IIS 7浏览网站出错,错误编码 http 503 service unable
由于重新装了Microsoft Visual Studio 2010,结果运行出错,检查发现应用程序池该项目已停止. 解决办法: 1.打开IIS:开始菜单>运行 2.输入“inetmgr”回车 ...
- opencv的使用——经典大坑
视频或相机中读入的帧数不对,或有空帧 image check from cap or video: you must check wether each frame is not empty when ...
- Jmeter-----随机生成手机号后8位并去重,来进行注册手机号的压测
要求:对注册接口进行100000次压测,手机号已126开头,后面的8位数不限 前言:在进行测试中,我们需要对注册接口进行压测100000次,那么就要求手机号码每次填写的不一致,否则手机号使用一次后会出 ...
- 8种json数据查询方式
你有没有对“在复杂的JSON数据结构中查找匹配内容”而烦恼.这里有8种不同的方式可以做到: JsonSQL JsonSQL实现了使用SQL select语句在json数据结构中查询的功能. 例子: ? ...
- Openstack 清除openstack网络与路由 (十七)
一)清除openstack网络与路由 “清除openstack网络与路由”和”添加openstack网络与路由”的操作步骤相反. 添加网络或路由时是先建 搭建网络>搭建子网>建立端口, 而 ...
- Codeforces 1131 F. Asya And Kittens-双向链表(模拟或者STL list)+并查集(或者STL list的splice()函数)-对不起,我太菜了。。。 (Codeforces Round #541 (Div. 2))
F. Asya And Kittens time limit per test 2 seconds memory limit per test 256 megabytes input standard ...