【專利信息服務平臺-注冊/登錄安全分析報告】

前言

由于網站注冊入口容易被黑客攻擊,存在如下安全問題:

  1. 暴力破解密碼,造成用戶信息泄露
  2. 短信盜刷的安全問題,影響業務及導致用戶投訴
  3. 帶來經濟損失,尤其是后付費客戶,風險巨大,造成虧損無底洞
    在這里插入圖片描述
    所以大部分網站及App 都采取圖形驗證碼或滑動驗證碼等交互解決方案, 但在機器學習能力提高的當下,連百度這樣的大廠都遭受攻擊導致點名批評, 圖形驗證及交互驗證方式的安全性到底如何? 請看具體分析

一、 專利信息服務平臺?PC 注冊入口

簡介:專利信息服務平臺?是一個提供專利信息檢索和分析服務的平臺,旨在幫助用戶快速、準確地獲取專利信息,支持多種檢索功能和數據分析工具。以下是幾個主要的專利信息服務平臺及其功能和服務:

?中國專利信息中心?:該中心是國家知識產權局批復的檢索單位,提供全面、專業的數據資源,涵蓋計算機、通信、機械、光電、化工、材料、生物醫藥等多個技術領域。服務內容包括查新檢索、授權專利檢索、專題檢索和防侵權檢索等?1。此外,中國專利信息中心還推出了“AI Pat+專利檢索分析系統”,并成立了知識產權人工智能實驗室,致力于利用AI技術賦能各應用場景?2。?專利服務數據庫?:該數據庫提供中國專利(包括發明、實用新型、外觀設計等)及國外專利(如美國、日本、英國、德國等98個國家和組織)的檢索服務。檢索功能包括中外專利混合檢索、法律狀態聯合檢索、IPC分類導航檢索等,還支持二次檢索、過濾檢索、同義詞檢索等輔助手段?3。此外,該平臺還具備機器翻譯功能,能夠即時翻譯英文專利內容,幫助用戶更好地理解專利信息?3。

在這里插入圖片描述

二丶 安全分析:

采用傳統的圖形驗證碼方式,具體為4個數字英文,ocr 識別率在 95% 以上。
?
測試方法:
采用模擬器+OCR識別

1. 模擬器交互

private OcrClientDddd ddddOcr = new OcrClientDddd();private static String INDEX_URL = "http://search.cnipr.com/register.jsp";@Overridepublic RetEntity send(WebDriver driver, String areaCode, String phone) {RetEntity retEntity = new RetEntity();try {driver.get(INDEX_URL);Thread.sleep(1 * 1000);// 1 輸入手機號WebElement phoneElement = ChromeUtil.waitElement(driver, By.id("mobile"), 1);phoneElement.sendKeys(phone);Thread.sleep(1 * 1000);// 2 獲取圖形驗證碼byte[] imgByte = GetImage.callJsById(driver, "safecode");int len = (imgByte != null) ? imgByte.length : 0;String imgCode = (len > 0) ? ddddOcr.getImgCode(imgByte) : null;if (imgCode == null || imgCode.length() < 1) {System.out.println("len=" + len + ",imgCode=" + imgCode);return retEntity;}// 3 輸入識別出來的圖形驗證碼driver.findElement(By.id("validate_code")).sendKeys(imgCode);// 4 點擊獲取驗證碼Thread.sleep(1 * 1000);WebElement getCodeElement = driver.findElement(By.id("getting"));getCodeElement.click();StringBuffer alertSb = new StringBuffer();boolean isAlert = ChromeUtil.isAlertPresent(driver, alertSb);if (isAlert) {retEntity.setMsg(alertSb.toString());return retEntity;}Thread.sleep(1 * 1000);String gtInfo = getCodeElement.getAttribute("value");retEntity.setMsg(gtInfo);if (gtInfo.contains("秒后可重新獲取")) {retEntity.setRet(0);return retEntity;} else {System.out.println("gtInfo=" + gtInfo);}return retEntity;} catch (Exception e) {System.out.println("phone=" + phone + ",e=" + e.toString());for (StackTraceElement ele : e.getStackTrace()) {System.out.println(ele.toString());}return null;} finally {driver.manage().deleteAllCookies();}}

2. 獲取圖形驗證碼


public static byte[] callJsById(WebDriver driver, String id) {return callJsById(driver, id, null);}public static byte[] callJsById(WebDriver driver, String id, StringBuffer base64) {String js = "let c = document.createElement('canvas');let ctx = c.getContext('2d');";js += "let img = document.getElementById('" + id + "'); /*找到圖片*/ ";js += "c.height=img.naturalHeight;c.width=img.naturalWidth;";js += "ctx.drawImage(img, 0, 0,img.naturalWidth, img.naturalHeight);";js += "let base64String = c.toDataURL();return base64String;";String src = ((JavascriptExecutor) driver).executeScript(js).toString();String base64Str = src.substring(src.indexOf(",") + 1);if (base64 != null) {base64.append(base64Str);}byte[] vBytes = (base64Str != null) ? imgStrToByte(base64Str) : null;return vBytes;}

3.圖形驗證碼識別(Ddddocr)


private static String INDEX_URL = "https://console.faceplusplus.com.cn/register";@Overridepublic RetEntity send(WebDriver driver, String areaCode, String phone) {RetEntity retEntity = new RetEntity();try {driver.get(INDEX_URL);Thread.sleep(1 * 1000);// 1 輸入手機號WebElement phoneElemet = driver.findElement(By.id("phone"));phoneElemet.sendKeys(phone);// 點擊發送驗證碼按鈕Thread.sleep(500);WebElement sendElemet = driver.findElement(By.xpath("//button/span[contains(text(),'發送驗證碼')]"));sendElemet.click();// 2 獲取圖形驗證碼WebElement imgElement, errElement, inputElement;String imgCode = null;byte[] imgByte = null;Thread.sleep(1 * 1000);for (int i = 0; i < 1; i++) {imgElement = driver.findElement(By.xpath("//img[contains(@src,'/api/official/captcha/get')]"));String imgUrl = imgElement.getAttribute("src");imgByte = GetImage.callJsByUrl(driver, imgUrl);int len = (imgByte != null) ? imgByte.length : 0;imgCode = (len > 0) ? ddddOcr.getImgCode(imgByte) : null;if (imgCode == null) {continue;}// 3 輸入識別出來的圖形驗證碼inputElement = driver.findElement(By.id("code"));inputElement.sendKeys(imgCode);ddddOcr.saveFile(this.getClass().getSimpleName(), imgCode, imgByte);// 4 確 認Thread.sleep(1 * 1000);// 點擊智能按鈕boolean isRobot = false;int beginX = 1540;int beginY = 879;if (isRobot)RobotMove.click(beginX, beginY);else {WebElement confirmElement = driver.findElement(By.xpath("//div[@class='ant-modal-footer']/button/span"));confirmElement.click();}}Thread.sleep(10 * 1000);WebElement msgElement = ChromeDriverManager.waitElement(driver, By.xpath("//button/span[contains(text(),'s')]"), 20);String gtInfo = (msgElement != null && msgElement.isDisplayed()) ? msgElement.getText() : null;retEntity.setMsg(imgCode + "->" + gtInfo);if (gtInfo != null && gtInfo.contains("秒")) {retEntity.setRet(0);return retEntity;}return retEntity;} catch (Exception e) {System.out.println("phone=" + phone + ",e=" + e.toString());for (StackTraceElement ele : e.getStackTrace()) {System.out.println(ele.toString());}return null;} finally {driver.manage().deleteAllCookies();}}

4. 圖形OCR識別結果:

在這里插入圖片描述在這里插入圖片描述

5. 測試返回結果:

測試返回結果:

在這里插入圖片描述

測試報告 :

在這里插入圖片描述

二丶結語

專利信息服務平臺?是一個提供專利信息檢索和分析服務的平臺,旨在幫助用戶快速、準確地獲取專利信息,支持多種檢索功能和數據分析工具 ,作為中國最權威的專利管理機構, 采用的還是老一代的圖形驗證碼已經落伍了, 用戶體驗一般,容易被破解, 一旦被國際黑客發起攻擊,將會對老百姓形成騷擾,影響聲譽。

很多人在短信服務剛開始建設的階段,可能不會在安全方面考慮太多,理由有很多。
比如:“ 需求這么趕,當然是先實現功能啊 ”,“ 業務量很小啦,系統就這么點人用,不怕的 ” , “ 我們怎么會被盯上呢,不可能的 ”等等。

有一些理由雖然有道理,但是該來的總是會來的。前期欠下來的債,總是要還的。越早還,問題就越小,損失就越低。

所以大家在安全方面還是要重視。(血淋淋的栗子!)#安全短信#

戳這里→康康你手機號在過多少網站注冊過!!!

谷歌圖形驗證碼在AI 面前已經形同虛設,所以谷歌宣布退出驗證碼服務, 那么當所有的圖形驗證碼都被破解時,大家又該如何做好防御呢?

>>相關閱讀
《騰訊防水墻滑動拼圖驗證碼》
《百度旋轉圖片驗證碼》
《網易易盾滑動拼圖驗證碼》
《頂象區域面積點選驗證碼》
《頂象滑動拼圖驗證碼》
《極驗滑動拼圖驗證碼》
《使用深度學習來破解 captcha 驗證碼》
《驗證碼終結者-基于CNN+BLSTM+CTC的訓練部署套件》

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/905799.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/905799.shtml
英文地址,請注明出處:http://en.pswp.cn/news/905799.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Linux專欄】Linux進程間關系和守護進程

文章目錄 1、進程間關系1.1 進程組1.2 組長進程 2、會話&#xff1f;2.1 查看會話2.2 創建會話 3、控制終端4、作業控制4.1 前臺/后臺進程 5、守護進程5.1 如何創建守護進程&#xff1f;5.2 殺掉守護進程 1、進程間關系 主要描述兩個名稱概念&#xff1a;即進程組和組長進程。…

電商物流管理優化:從網絡重構到成本管控的全鏈路解析

大家好&#xff0c;我是沛哥兒。作為電商行業&#xff0c;我始終認為物流是電商體驗的“最后一公里”&#xff0c;更是成本控制的核心戰場。隨著行業競爭加劇&#xff0c;如何通過物流網絡優化實現降本增效&#xff0c;已成為電商企業的必修課。本文將從物流網絡的各個環節切入…

ubuntu 更新華為源

1. 備份配置文件 sudo cp -a /etc/apt/sources.list /etc/apt/sources.list.bak 2. 修改source.list 文件&#xff0c;將http://archive.ubuntu.com和http://security.ubuntu.com替換成http://repo.huaweicloud.com&#xff0c;可以參考如下命令&#xff1a; # 第一條指令 s…

CS016-4-unity ecs

【37】將系統轉換為任務 Converting System to Job 【Unity6】使用DOTS制作RTS游戲|17小時完整版|CodeMonkey|【37】將系統轉換為任務 Converting System to Job_嗶哩嗶哩_bilibili a. 將普通的方法&#xff0c;轉化成job。第一個是寫一個partial struct xxx&#xff1b;第二…

如何使用 React Hooks 替代類組件的生命周期方法?

文章目錄 1. 引言2. useEffect 概述3. 模擬類組件的生命周期方法3.1 模擬 componentDidMount3.2 模擬 componentDidUpdate3.3 模擬 componentWillUnmount 4. 多個 useEffect 的使用5. 注意事項6. 總結 1. 引言 在 React 16.8 版本之前&#xff0c;開發者主要通過類組件&#x…

盒帶自編教材《軟件工程》目錄

目錄 前言 第1章 軟件工程概述 1.1 軟件概述 1.1.1 軟件的定義 1.1.2 軟件的特點 1.1.3 軟件的分類 1.1.4 軟件的發展 1.2 軟件危機 1.2.1 什么是軟件危機 1.2.2 產生的原因及解決途徑 1.3 軟件工程 1.3.1 軟件工程定義 1.3.2 軟件工程的研究內容 1.3.3 軟件工程的目標和原則…

CAN通信協議傳輸數據,為什么喜歡低位在前高位在后?而RS485則更傾向高位在前低位在后?

CAN 通信協議通常采用低位在前&#xff08;小端字節序&#xff09;&#xff0c;而 RS - 485 本身沒有固定要求高位在前或低位在后&#xff0c;其數據傳輸順序更多取決于具體應用和上層協議。 CAN 通信協議低位在前的原因 硬件設計與實現角度 邏輯電路處理便捷&#xff1a;數…

NGINX 安全性:持續進化的防護能力,為您的應用保駕護航

在數字時代,網絡安全的重要性不言而喻。任何暴露在互聯網上的應用都可能成為攻擊者的目標。作為互聯網基礎設施的關鍵組成部分,NGINX 不僅是高性能的 Web 服務器和反向代理,更在應用安全防護方面扮演著至關重要的角色。它就像您數字資產的“第一道防線”和“智能門禁”,憑借…

makefile細節說明

在 Makefile中&#xff0c;依賴關系的左右兩部分有特定的名稱&#xff1a; ??左邊部分&#xff08;冒號左側&#xff09;?? 稱為 ??目標&#xff08;Target&#xff09;?? ??右邊部分&#xff08;冒號右側&#xff09;?? 稱為 ??依賴項&#xff08;Prerequisite…

Zephyr OS Nordic芯片的Flash 操作

目錄 概述 1. 軟硬件環境 1.1 軟件開發環境 1.2 硬件環境 2 Flash操作庫函數 2.1 nRF52832的Flash 2.2 Nordic 特有的 Flash 操作 2.2.1 nrfx_nvmc_bytes_write 函數 2.2.2 nrfx_nvmc_page_erase函數 2.2.3 nrfx_nvmc_write_done_check 函數 3 操作Flash的接口函數…

03、基礎入門-SpringBoot的大時代背景

03、基礎入門-SpringBoot的大時代背景 # Spring Boot的大時代背景 Spring Boot的出現和發展&#xff0c;與以下時代背景密切相關&#xff1a; ## 1. 微服務架構的興起 ### 背景 隨著互聯網應用的復雜度增加&#xff0c;傳統的單體架構在擴展性、維護性和團隊協作方面遇到瓶…

ChromaDB 向量庫優化技巧實戰

chroma 一步步使用 安裝 # 安裝chromadb pip install chromadb,sentence_transformers# 不啟動服務會出現sock.connect(sa)TimeoutError: timed out chroma run服務啟動后&#xff0c;您將看到類似以下輸出&#xff1a; 建立連接 部署完成后&#xff0c;需要建立與Chroma服…

全球泳裝與沙灘裝市場深度洞察:從功能性需求到可持續時尚的蛻變(2025-2031)

泳裝與沙灘裝作為水上活動與度假場景的核心服飾&#xff0c;正經歷從單一功能性產品向“科技時尚可持續”融合的轉型。根據QYResearch預測&#xff0c;2031年全球市場規模將達2512.4億元人民幣&#xff0c;年復合增長率&#xff08;CAGR&#xff09;4.0%&#xff08;2025-2031&…

WebRTC技術下的EasyRTC音視頻實時通話SDK,助力車載通信打造安全高效的智能出行體驗

一、方案背景? 隨著智能交通與車聯網技術的飛速發展&#xff0c;車載通信在提升行車安全、優化駕駛體驗以及實現智能交通管理等方面發揮著越來越重要的作用。傳統的車載通信方式在實時性、穩定性以及多媒體交互能力上存在一定局限&#xff0c;難以滿足現代車載場景日益復雜的…

主流數據庫運維故障排查卡片式速查表與視覺圖譜

主流數據庫運維故障排查卡片式速查表與視覺圖譜 本文件將主文檔內容轉化為模塊化卡片結構&#xff0c;并補充數據庫結構圖、排查路徑圖、鎖機制對比等視覺圖譜&#xff0c;以便在演示、教學或現場排障中快速引用。 &#x1f4cc; 故障卡片速查&#xff1a;連接失敗 數據庫檢查…

升級kafka4.0.0,無ZK版本

設備規劃&#xff1a; 172.20.192.47 kafka-0 172.20.192.48 kafka-1 172.20.192.49 kafka-2 單機塊7TB Nvme磁盤一共9塊 # 格式化成GPT分區 sudo parted /dev/nvme0n1 --script mklabel gpt sudo parted /dev/nvme1n1 --script mklabel gpt sudo parted /dev/nvme2n1 --s…

Vue 學習隨筆系列二十三 -- el-date-picker 組件

el-date-picker 組件 文章目錄 el-date-picker 組件el-date-picker 只有某些日期可選 el-date-picker 只有某些日期可選 <template><div><el-form ref"form" size"mini":model"form" :rules"rules"label-width"8…

使用Python實現簡單的人工智能聊天機器人

最近研學過程中發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊鏈接跳轉到網站人工智能及編程語言學習教程。讀者們可以通過里面的文章詳細了解一下人工智能及其編程等教程和學習方法。下面開始對正文內容的…

[QMT量化交易小白入門]-五十四、核心資產ETF輪動目前年化只有74%了,在過濾掉當天止損,當天買入的之后

本專欄主要是介紹QMT的基礎用法,常見函數,寫策略的方法,也會分享一些量化交易的思路,大概會寫100篇左右。 QMT的相關資料較少,在使用過程中不斷的摸索,遇到了一些問題,記錄下來和大家一起溝通,共同進步。 文章目錄 相關閱讀買入邏輯詳解代碼塊作用解析止損邏輯詳解代碼…

實戰解析MCP-使用本地的Qwen-2.5模型-AI協議的未來?

文章目錄 目錄 文章目錄 前言 一、MCP是什么&#xff1f; 1.1MCP定義 1.2工作原理 二、為什么要MCP&#xff1f; 2.1 打破碎片化的困局 2.2 實時雙向通信&#xff0c;提升交互效率 2.3 提高安全性與數據隱私保護 三、MCP 與 LangChain 的區別 3.1 目標定位不同 3.…