這些驗證碼不再安全

2021-02-07 安全牛


此類識別方法就是流程化作業,基本不太需要在編程上思考太多。


識別步驟如下:


下載一定數量的目標驗證碼圖片,數量根據驗證圖片的複雜程度而定

準備好一套標準的CNN圖像分類的項目模板,並做好相關的功課

對項目模板進行簡單的參數調整,以適配當前問題的圖片尺寸

將圖像輸入CNN,對輸出的結果和先驗標記的類型做誤差對比

不斷迭代生成模型


由Google主推的深度學習框架tensorflow的入門文檔裡面就介紹了分別用矩陣回歸和CNN神經網絡對手寫數字識別的方法。


當然,關於如何獲取帶標記的數據,目前也有比較便宜的獲取渠道,直接在網上搜索「打碼平臺」後,可發現有許多提供 「人工智慧」領域的「人工」打碼服務的服務商,並且大部分都有明碼標價。對於圖片驗證碼,基本上是幾分錢一張標記圖。




此類識別方法仍然是基於深度學習這種通用方法來做的,只是我們可以將一些複雜問題進行適當的簡化,這個思想有點類似於「降維」處理的意思。


理論上,利用深度學習能對絕大多數的線性或者非線性問題實現非常好的擬合。


雖然問題越複雜、數據需求量越大的現狀是無法避免的,但是我們可以做一些人為的自動化工作來達到目標。


比如像下圖中的驗證碼,無論它們的色彩、字體及幹擾項如何變化,字符之間容易分割的事實是無法被改變的。也就是說,此類驗證碼可以很容易將一個本來要判定N位字符串的問題簡化為「判定1位字符,然後將N個這樣的圖片再組合起來」。這樣網絡的複雜度可以大大的簡化,訓練所需要的樣本數量及訓練時長都會大量減少。



如果驗證碼圖片可以從N維「降維」到1維,並且字符的字體單一(以下圖為例),那麼問題就更簡單了:只需為每個字符分類準備一張圖片即可。例如你的驗證碼範圍是[0,9],則只需要從下載的圖片集中對0~9這幾個數字每個標記一張即可,然後就是使用一些普通的數據增強技術:貼圖,綻放,上下自由截取,隨機噪點等等,可以生成無限多的數據集了。當然,這些全部是由程序自動化完成。



相關焦點

  • 滑動驗證碼攻防對抗
    廠滑動驗證碼漏洞挖掘一、背景介紹  在業務安全領域,滑動驗證碼已經是國內繼,傳統字符型驗證碼之後的標配。眾所周知,打碼平臺和機器學習這兩種繞過驗證碼的方式,已經是攻擊者很主流的思路,不再闡述。冷滲透介紹的是一個冷門的繞過思路和防禦方案。這些積累,均來自於實戰之中,希望有用。二、黑產攻擊者知己知彼,百戰不殆。如果不清楚攻擊者的手段,又如何能制定防禦方案?1.
  • python生成驗證碼→處理驗證碼→建立CNN模型訓練→測試模型準確率→識別驗證碼
    前言本文使用了pillow庫來生成自己想要的驗證碼,直接運行pip install pillow即可完成安裝使用pytorch來建立和訓練模型,本文使用的pytorchcuda8.0版本的1.0.0,可以在官網https://pytorch.org/上選擇適合自己電腦的版本使用opencv來對驗證碼進行處理,直接運行pip install opencv-python即可安裝一
  • TensorFlow自動識別驗證碼(二)
    那麼今天這篇文章將對上篇文章中代碼進行修改用於實現對主流的CMS進行驗證碼的破解。0x001 破解步驟先回顧一下 tensorflow 的自動識別驗證碼的步驟由於後面三步基本都是tensorflow自動完成我們主要的工作是前兩步。
  • 最新驗證碼識別模擬登陸B站
    3.1 方法一:頁面截圖,將驗證碼區域進行裁剪保存使用此方法時,注意我們截取驗證碼圖片時需要截取完整,完整驗證碼截圖如下:首先做的當然是將點擊登錄後的頁面進行截圖,然後定位到驗證碼的位置,通過location()方法獲取驗證碼左上角的坐標,
  • 基於 CNN 的驗證碼破解實戰
    ,在工程實踐中為了將數據採集、模擬登錄等一系列操作行為自動化處理就需要處理好驗證碼的識別工作,已有的工作中基於機器學習和深度學習都有很多的工作開展出來,效果也都不錯,今天本文的主要內容就是基於卷積神經網絡CNN模型來構建驗證碼圖片識別模型。
  • 設備安全驗證功能FAQ
    親愛的旅行者:一直以來,我們都關注著旅行者的帳號安全問題。為了進一步保障旅行者的帳號安全,我們於5月17日上線了基於綁定手機號的設備安全驗證功能。但由於我們對新功能的體驗考慮不周,給部分旅行者的體驗帶來了不便,對此我們深表歉意。針對大家的疑問,我們也做了整理和匯總,在此進行集中反饋。
  • 總結幾種常見 驗證碼的解決方案,非常有用!
    於是鹹魚總結了目前遇到過的的驗證碼類型以及總結出來的相關處理方式和大家聊一聊。現在市面上的驗證碼的類型大致有下面幾種類型。一、圖形驗證碼比較常見的英文數字組合成的圖形驗證碼,常常輔以各類幹擾線和扭曲圖片中的內容達到提高混淆難度的目的,並且通過加長圖片中的文字長度提升識別成本。
  • 【帳號安全】小知識
    今天,百度貼吧作者「魔靈123548」,發布了一篇關於帳號安全的文章,雖然小編沒有類似被盜的經歷,也沒有相關技術能力甄別真偽
  • 利用 tesseract 解析簡單數字驗證碼圖片
    陳鍵冬,Python中文社區專欄作者GitHub:https://github.com/chenjiandongxtesseract 是一個 OCR(Optical Character Recognition,光學字符識別)引擎,能夠識別圖片中字符,利用這個可以用來解析一些簡單的圖片驗證碼
  • Python項目實戰篇——常用驗證碼標註&識別(CNN神經網絡模型訓練/測試/部署)
    一、前言    今天給大家分享的實戰項目是常用驗證碼標註&識別,前面三篇文章講解了文章的創作靈感、需求分析和實現思路、數據採集/預處理/字符圖切割等知識、高效率數據標註等知識,分別是以下文章:Python項目實戰篇——常用驗證碼標註和識別(需求分析和實現思路)Python項目實戰篇——常用驗證碼標註&識別(數據採集/預處理/字符圖切割)
  • SpringBoot項目 qq郵箱驗證碼註冊和登錄
    1.1、思路註冊:通過輸入的郵箱發送驗證碼,檢驗前端傳來的驗證碼是否和後臺生成的一致,若一致,將數據寫入資料庫,完成註冊;登錄:通過輸入的郵箱查詢密碼,然後比較密碼是否一致,一致就是登錄成功。
  • App安全評估手冊-Android
    這樣對這個值進行控制就會導致一系列安全問題,所以組件安全也主要針對配置了意圖過濾的組件。這時我們把組件分為公有組件和私有組件。修復建議:當進行敏感信息操作時,掩碼顯示輸入數據並檢測是否被錄屏、截屏,避免敏感信息洩露邊信道信息洩漏當應用處理用戶或其它數據源輸入的數據時,可能會把數據放在不安全的位置,而這些數據能夠被同一設備上其它的惡意應用讀取,這就造成了風險,也就是俗稱的邊信道信息洩漏。
  • 自動化腳本無法處理驗證碼?Python圖片識別庫Tesseract實戰
    在Ui測試的時候,有時我們會遇到」元素以圖片的形式展示內容」(最經典的案例使驗證碼).這時傳統的文檔解析方案就失效了.因為其免費與較好的效果,許多的個人開發者以及一些較小的團隊在使用著 Tesseract ,諸如驗證碼識別、車牌號識別等應用中,不難見到 Tesseract 的身影。④Tesseract(/『tesərækt/) 這個詞的意思的本意是」超立方體」.不過這裡用到的,是一款以其命名的開源 OCR(Optical Character Recognition, 光學字符識別) 軟體。
  • PHP Web 安全
    ,於是返回結果可能為一段惡意結構,四、密碼強度:1.避免任何語言的字典單詞2.使用大小寫字母或其他字符組合3.密碼長度大於6-8位,可以更多4.創建密碼提示符代替答案,如一句話的首寫字母5.定期修改密碼6.是否以加密的方式存儲密碼7.保存密碼的資料庫是否安全
  • MITRE CWE 4.0版新增硬體安全漏洞;Cloud Snooper攻擊可繞過AWS防火牆
    【安全播報】MITRE發布安全漏洞列表CWE 4.0版,新增硬體安全漏洞【威脅情報】Magecart攻擊者利用偽造的CDN來繞過檢測Cloud Snooper攻擊可繞過AWS防火牆,疑為國家支持【分析報告】RiskIQ發布《2019年移動APP威脅態勢報告》【惡意軟體】新銀行木馬
  • CSRF攻擊與防禦,Web安全的第一防線(源碼,實戰,5分鐘科普文)
    如果CSRF發送的垃圾信息還帶有蠕蟲連結的話,那些接收到這些有害信息的好友萬一打開私信中的連接就也成為了有害信息的散播著,這樣數以萬計的用戶被竊取了資料種植了木馬。整個網站的應用就可能在瞬間奔潰,用戶投訴,用戶流失,公司聲譽一落千丈甚至面臨倒閉。
  • 用 KNN 實現驗證碼識別,又 Get 到一招
    作者 | 李秋鍵編輯 | Carol題圖 | 視覺中國出品| CSDN(ID:CSDNnews)驗證碼使我們生活中最為常見的防治爬蟲和機器人登錄攻擊的手段,一般的驗證碼主要由數字和字母組成,故我們可以設想:我們是否可以根據文本識別訓練模型進行識別驗證碼呢?
  • 訓練自己的驗證碼識別器
    模型將分出一部分不會被訓練的驗證數據,並將在每一輪結束時評估這些驗證數據的誤差和任何其他模型指標。驗證數據是清洗之前 x 和y 數據的最後一部分樣本中。validation_data: 元組 (x_val,y_val) 或元組 (x_val,y_val,val_sample_weights),用來評估損失,以及在每輪結束時的任何模型度量指標。模型將不會在這個數據上進行訓練。
  • 威脅情報安全公告
    量子通信包括量子密鑰分發,量子秘密共享和量子安全直接通信等模式。量子密鑰分發和量子秘密共享是在通信雙方共享密碼。現有的量子通信網絡主要是基於量子密鑰分發,用量子的方法在網絡中分發安全密鑰。目前還沒有能夠在網絡中直接傳輸安全信息。2000年,清華大學龍桂魯原創提出了量子安全直接通信,量子安全直接通信的特殊之處在於,不需要密碼,就可以完成信息的安全傳輸。