CN112104458A - 一种基于手机令牌防御csrf攻击的方法 - Google Patents

一种基于手机令牌防御csrf攻击的方法 Download PDF

Info

Publication number
CN112104458A
CN112104458A CN202010922150.3A CN202010922150A CN112104458A CN 112104458 A CN112104458 A CN 112104458A CN 202010922150 A CN202010922150 A CN 202010922150A CN 112104458 A CN112104458 A CN 112104458A
Authority
CN
China
Prior art keywords
server
dynamic token
client
mobile phone
token
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010922150.3A
Other languages
English (en)
Inventor
田凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Unicloud Nanjing Digital Technology Co Ltd
Original Assignee
Unicloud Nanjing Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Unicloud Nanjing Digital Technology Co Ltd filed Critical Unicloud Nanjing Digital Technology Co Ltd
Priority to CN202010922150.3A priority Critical patent/CN112104458A/zh
Publication of CN112104458A publication Critical patent/CN112104458A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种基于手机令牌防御CSRF攻击的方法,包括以下步骤:S1:客户端注册包含手机号码信息的账号,登陆所述账号,且客户端向服务器发送HTTP请求后,服务器获取客户端中注册的手机号码;S2:所述客户端随机生成服务器动态令牌,发送给所述客户端,服务器同时保存所述服务器动态令牌;S3:所述客户端收到服务器动态令牌后,编辑手机动态令牌,并将手机动态令牌发送给服务器所专属的服务器号码;S4:服务器对比手机动态令牌和服务器动态令牌是否相同;S5:若手机动态令牌和服务器动态令牌不同,则切断服务器与客户端之间的联系;若手机动态令牌和服务器动态令牌相同,则建立服务器与客户端的联系。该方法可以有效地避免攻击者在同一个根域名下不同服务器进行操作。

Description

一种基于手机令牌防御CSRF攻击的方法
技术领域
本发明涉及手机的网站访问安全领域,具体涉及一种基于手机令牌防御CSRF攻击的方法
背景技术
跨站请求伪造(CSRF)攻击,是指攻击者利用用户在一网站下的登录态信息,向与该一网站属于相同根域的任意网站发送请求,从而以用户的名义发送邮件、或修改信息、或购买商品等。
现有技术中,如果用户成功登录根域下的一个网站,则认为该用户在该根域下的任一网站都处于登录态,因此如果攻击者冒充该用户向该根域下的网站发送购买商品、修改用户资料等请求,则该根域下的网站将根据该请求进行相应的业务处理。
具体来讲,由于同一根域名下的不同网站的登录信息相同,而登录信息都保存在会话cookie中,因此,攻击者可以通过在http请求中携带用户已经成功登录的网站的cookie值,来冒充该用户,向与该用户已经成功登录的网站的一级域名相同的目标网站发送http请求。
现有技术对防御CSRF攻击进行防护时,常用的方法有,一种是在HTTP Referer中限制请求来源,但是基于用户隐私保护的考虑,服务器并非任何情况下都能获取到Referer。
发明内容
为了克服现有技术中的不足,本发明提出一种基于手机令牌防御CSRF攻击的方法,其具有避免攻击者利用同一根域名下不用网站,产生不属于客户的购买商品等操作的情况,有效地保证客户网络信息的安全性。
为了实现上述目的,本发明的一种基于手机令牌防御CSRF攻击的方法,包括以下步骤:步骤S1:客户端注册包含手机号码信息的账号,登陆账号,且客户端向服务器发送HTTP请求后,服务器获取客户端中注册的手机号码;步骤S2:客户端随机生成服务器动态令牌,以短信的方式发送给客户端,服务器同时保存服务器动态令牌;步骤S3:客户端收到服务器动态令牌后,编辑手机动态令牌,并将手机动态令牌发送给服务器所专属的服务器号码;步骤S4:服务器通过调用服务器号码,获取服务器号码中的手机动态令牌、手机号码,再根据手机号码,获取手机号码对应的服务器动态令牌,服务器对比手机动态令牌和服务器动态令牌是否相同;步骤S5:若手机动态令牌和服务器动态令牌不同,则切断服务器与客户端之间的联系,避免攻击者通过服务器网站,对客户端的客户造成仿冒、攻击的影响;若手机动态令牌和服务器动态令牌相同,则建立服务器与客户端的联系,客户端能正常访问服务器。
进一步的,服务器动态密码由数字、字母或者符号中的其中一种或者多种组合组成。
进一步的,服务器动态密码至少为4位字符。
进一步的,步骤S3中,编辑手机动态令牌的时间为三分钟,编辑手机动态令牌的时间从服务器发送服务器动态令牌后开始计算,若编辑手机动态令牌的时间超过三分钟,则服务器删除步骤S2中保存的服务器动态令牌,并切断服务器与客户端之间的联系。
进一步的,服务器为同一个根域名下的多个网站。
进一步的,步骤S3中,客户端通过短信的方式将手机动态令牌发送给服务器号码,或者客户端通过手机app的方式将手机动态令牌发送给服务器号码。
有益效果:当攻击者利用客户的登陆信息访问同一个根域名下的不同网站时,更换至后一个网站时,该网站服务器会发送服务器动态令牌给登陆信息下的手机号码,操作人员在查看了手机上的服务器动态令牌后,只有发送给服务器相同的手机动态令牌,服务器才能允许客户端继续访问服务器,若服务器未收到手机动态令牌,或者手机动态令牌与服务器动态令牌不完全匹配,则切断服务器与客户端的访问联系,避免客户端继续访问服务器后造成的购买商品等操作损失。
附图说明
下面结合附图对本发明作进一步描写和阐述。
图1是本发明首选实施方式的步骤流程图。
具体实施方式
下面将结合附图、通过对本发明的优选实施方式的描述,更加清楚、完整地阐述本发明的技术方案。
如图1所示,本发明首选实施方式的一种基于手机令牌防御CSRF攻击的方法,包括以下步骤:
步骤S1:客户端注册包含手机号码信息的账号,登陆账号,且客户端向服务器发送HTTP请求后,服务器获取客户端中注册的手机号码。
具体地,客户端在访问网站时,首先需要注册并登陆账号,由于账号中包含了客户端注册时的手机号码,所以客户端携带该账号访问服务器时,服务器能获取该客户端账号中的手机号码,获取手机号码的方式为,调用该账号下cookie下的手机号码值的程序代码。
此时会有两种情况:第一种情况:若此时客户端始终在该根域名下的该网站下继续操作,即客户端始终在访问上述服务器,则说明客户端并没有抛弃与该服务器的session会话,也就间接说明是客户端的真实客户仍然在该服务器上操作,攻击者此时无法利用账号信息实施违规购买等操作,客户端与该网站之间的操作属于客户端真实用户的操作。此时,客户端可以正常地与该网站的服务器正常联系,客户端访问该服务器不受任何影响。
第二种情况:若客户端抛弃了与上述服务器的session会话,转而选择该根域名下的其他服务器,则说明该客户端访问同一根域名下的其他服务器具有一定的风险,则会进入到步骤S2。
具体地,例如,客户端在http://blog.163.com登录之后,在http://mail.163.com或者http://www.163.com也已经登录。这三个网站分别属于同一根域名下的三个不同服务器,当客户端一直在访问网站http://blog.163.com的服务器,则属于客户真实操作;若切换至网站http://mail.163.com或者http://www.163.com的服务器后,此时的操作就是属于访问同一根域名下的不同网站,则就会进入到步骤S2。
步骤S2:客户端随机生成服务器动态令牌,以短信的方式发送给客户端,服务器同时保存服务器动态令牌。
具体地,在同一根域名下访问不同的服务器,后访问的服务器会直接调用前一个服务器下的cookie信息,并非客户端直接登录并访问该在后服务器,由于上述区别,所以该在后服务器会执行步骤S2。
具体地,在后访问的服务器利用代码工具,例如,利用随机生成工具产生一个字符串,该字符串就是属于该在后服务器的服务器动态令牌。且为了保证该服务器动态令牌的复杂度,并不易被破解,所以该服务器动态令牌至少为4位字符;且4位字符由数字、字母或者符号中的其中一种或者多种组合组成,如7834、A47B、%4Q2等。
生成该服务器动态令牌后,该在后服务器分别两步动作。
第一步:将生成的服务器动态令牌保存到数据库。
第二步:以短信的方式给客户端发送该服务器动态令牌。
步骤S3:客户端收到服务器动态令牌后,编辑手机动态令牌,并将手机动态令牌发送给服务器所专属的服务器号码。
具体地,当客户端接收到服务器动态令牌后,供客户端使用者查看,这里的客户端可以特指可以接收短信的设备,如手机、ipad等。客户端在得知了服务器动态令牌后,编辑手机动态令牌,保证手机动态令牌与服务器动态令牌完全相同,再将该手机动态令牌发送给服务器所专属的服务器号码,该服务器专属的服务器号码指的是服务器归属的专有电话号码,如10086是移动的专属号码,1069364020164362是腾讯的专属号码。
客户端有两种方式给服务器专属的服务器号码发送手机动态指令。
第一种方式:客户端,如手机,直接编辑短信,短信内容键入与服务器动态指令相同的手机动态指令,接收方为服务器专属号码,并发送。
第二种方式:利用该服务器所对应的手机app,在该手机app中直接发送手机动态指令给该服务器。例如,如果服务器是淘宝网,则在手机淘宝app上的功能区中发送手机动态令牌。该手机app要具备与该网站所网站服务器直接通信的服务器通道。
步骤S4:服务器通过调用服务器号码,获取服务器号码中的手机动态令牌、手机号码,再根据手机号码,获取手机号码对应的服务器动态令牌,服务器对比手机动态令牌和服务器动态令牌是否相同。
具体地,服务器在接收到客户端发送的信息后,首先会获取该客户端信息中所携带的手机号码、手机动态令牌两个参数。其中,手机号码是客户端自带的信息,手机动态令牌是客户端键入的信息。服务器只要调用客户端信息命令即可获取客户端信息中所携带的手机号码、手机动态令牌两个参数。
服务器取得客户端的手机号码后,服务器会遍历数据库信息,寻找与该手机号码匹配的所有信息,由于前述存入到数据库中的服务器动态令牌是与客户端手机号码是一一对应映射的,客户端手机号码与该发送信息给服务器的手机号码为同一个手机号码。所以服务器很容易根据手机号码找寻到该手机号码下对应的服务器动态令牌。然后服务器再将服务器动态令牌,与接收的手机动态令牌相比较。
步骤S5:若手机动态令牌和服务器动态令牌不同,则切断服务器与客户端之间的联系,避免攻击者通过服务器网站,对客户端的客户造成仿冒、攻击的影响;若手机动态令牌和服务器动态令牌相同,则建立服务器与客户端的联系,客户端能正常访问服务器。
具体地,服务器动态令牌与手机动态令牌的比较结果有三种情况。
第一种:手机动态令牌与服务器动态令牌的相同,得到手机令牌的验证后,客户端可以正常访问同一根域名下的该网站。特别的,如果客户端访问的是不同域名下两个网站,则不会接收到服务器动态令牌,因为,在后的服务器若不是与在前服务器在同一根域名下,则在后服务器无法获得在前服务器中的cookie信息,所以自然也不能根据cookie信息实现一些列操作。该在后服务器处于未有登陆者信息的状态。
第二种:手机动态令牌与服务器动态令牌不相同,则服务器不再响应客户端的HTTP请求,服务器与客户端断开联系。
第三种:客户端超时未反应。具体的,是客户端未在3分钟内将手机动态令牌发送给服务器,此时服务器会认为客户端超时响应,服务器也会拒绝客户端的HTTP请求,同时,服务器还会删除数据库中存储的服务器动态令牌,客户端此时无法访问该同一个根域名下的在后网站。前述3分钟时间指的是,服务器发送服务器动态令牌到服务器接比较完手机动态令牌后的时间。也就是说,忽略不计服务器比较以及查询的时间的话,客户端键入手机动态令牌的最大时间为3分钟。
上述具体实施方式仅仅对本发明的优选实施方式进行描述,而并非对本发明的保护范围进行限定。在不脱离本发明设计构思和精神范畴的前提下,本领域的普通技术人员根据本发明所提供的文字描述、附图对本发明的技术方案所作出的各种变形、替代和改进,均应属于本发明的保护范畴。本发明的保护范围由权利要求确定。

Claims (6)

1.一种基于手机令牌防御CSRF攻击的方法,其特征在于,包括以下步骤:
步骤S1:客户端注册包含手机号码信息的账号,登陆所述账号,且客户端向服务器发送HTTP请求后,服务器获取客户端中注册的手机号码;
步骤S2:所述客户端随机生成服务器动态令牌,以短信的方式发送给所述客户端,服务器同时保存所述服务器动态令牌;
步骤S3:所述客户端收到服务器动态令牌后,编辑手机动态令牌,并将手机动态令牌发送给服务器所专属的服务器号码;
步骤S4:所述服务器通过调用服务器号码,获取服务器号码中的手机动态令牌、手机号码,再根据手机号码,获取所述手机号码对应的服务器动态令牌,服务器对比手机动态令牌和服务器动态令牌是否相同;
步骤S5:若手机动态令牌和服务器动态令牌不同,则切断服务器与客户端之间的联系,避免攻击者通过服务器网站,对客户端的客户造成仿冒、攻击的影响;若手机动态令牌和服务器动态令牌相同,则建立服务器与客户端的联系,客户端能正常访问服务器。
2.根据权利要求1所述的一种基于手机令牌防御CSRF攻击的方法,其特征在于,所述服务器动态密码由数字、字母或者符号中的其中一种或者多种组合组成。
3.根据权利要求2所述的一种基于手机令牌防御CSRF攻击的方法,其特征在于,所述服务器动态密码至少为4位字符。
4.根据权利要求1所述的一种基于手机令牌防御CSRF攻击的方法,其特征在于,所述步骤S3中,编辑所述手机动态令牌的时间为三分钟,编辑所述手机动态令牌的时间从服务器发送服务器动态令牌后开始计算,若编辑手机动态令牌的时间超过三分钟,则服务器删除步骤S2中保存的服务器动态令牌,并切断服务器与客户端之间的联系。
5.根据权利要求1所述的一种基于手机令牌防御CSRF攻击的方法,其特征在于,所述服务器为同一个根域名下的多个网站。
6.根据权利要求1所述的一种基于手机令牌防御CSRF攻击的方法,其特征在于,所述步骤S3中,所述客户端通过短信的方式将手机动态令牌发送给服务器号码,或者所述客户端通过手机app的方式将手机动态令牌发送给服务器号码。
CN202010922150.3A 2020-09-04 2020-09-04 一种基于手机令牌防御csrf攻击的方法 Pending CN112104458A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010922150.3A CN112104458A (zh) 2020-09-04 2020-09-04 一种基于手机令牌防御csrf攻击的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010922150.3A CN112104458A (zh) 2020-09-04 2020-09-04 一种基于手机令牌防御csrf攻击的方法

Publications (1)

Publication Number Publication Date
CN112104458A true CN112104458A (zh) 2020-12-18

Family

ID=73757782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010922150.3A Pending CN112104458A (zh) 2020-09-04 2020-09-04 一种基于手机令牌防御csrf攻击的方法

Country Status (1)

Country Link
CN (1) CN112104458A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102480490A (zh) * 2010-11-30 2012-05-30 国际商业机器公司 一种用于防止csrf攻击的方法和设备
CN103067385A (zh) * 2012-12-27 2013-04-24 深圳市深信服电子科技有限公司 防御会话劫持攻击的方法和防火墙
CN105743869A (zh) * 2014-12-12 2016-07-06 阿里巴巴集团控股有限公司 Csrf攻击防范方法、网站服务器及浏览器
CN106341370A (zh) * 2015-07-07 2017-01-18 北京京东尚科信息技术有限公司 一种防御跨站请求伪造攻击的方法及装置
US20170041144A1 (en) * 2015-08-07 2017-02-09 Adobe Systems Incorporated Cross-site request forgery defense

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102480490A (zh) * 2010-11-30 2012-05-30 国际商业机器公司 一种用于防止csrf攻击的方法和设备
CN103067385A (zh) * 2012-12-27 2013-04-24 深圳市深信服电子科技有限公司 防御会话劫持攻击的方法和防火墙
CN105743869A (zh) * 2014-12-12 2016-07-06 阿里巴巴集团控股有限公司 Csrf攻击防范方法、网站服务器及浏览器
CN106341370A (zh) * 2015-07-07 2017-01-18 北京京东尚科信息技术有限公司 一种防御跨站请求伪造攻击的方法及装置
US20170041144A1 (en) * 2015-08-07 2017-02-09 Adobe Systems Incorporated Cross-site request forgery defense

Similar Documents

Publication Publication Date Title
US20220060467A1 (en) Systems and methods for phone number certification and verification
US9882916B2 (en) Method for verifying sensitive operations, terminal device, server, and verification system
US10063547B2 (en) Authorization authentication method and apparatus
US8151336B2 (en) Devices and methods for secure internet transactions
TWI449394B (zh) User authentication, verification and code generation system maintenance subsystem
CN103916244B (zh) 验证方法及装置
EP3319293A1 (en) Cross-terminal login-free method and device
US20080318548A1 (en) Method of and system for strong authentication and defense against man-in-the-middle attacks
CN105407074A (zh) 身份验证方法、装置及系统
US20130305325A1 (en) Methods for Thwarting Man-In-The-Middle Authentication Hacking
US8959626B2 (en) Detecting a suspicious entity in a communication network
JP2008021075A (ja) 無線lanにおける認証システムおよび認証方法、認証サーバ、ならびに認証プログラム
CN107204873A (zh) 一种切换目标域名解析服务器的方法及相关设备
WO2012004640A1 (en) Transaction authentication
CN106713242A (zh) 数据请求的处理方法及处理装置
CN112235177B (zh) 通过即时通信发送认证信息的方法、装置及系统
CN105376733A (zh) 信息处理方法及电子设备
Nirmal et al. Maximizing online security by providing a 3 factor authentication system to counter-attack'Phishing'
CN112104458A (zh) 一种基于手机令牌防御csrf攻击的方法
US9143510B2 (en) Secure identification of intranet network
CN106850401A (zh) 一种无线认证装置、系统及其认证方法
EP2750348A1 (en) A login recovery system
EP2204030B1 (en) Transmission of messages
CN108632090B (zh) 网络管理方法及系统
US20240205338A1 (en) Transferring an authentication state from a digital channel to an agent channel

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination