《密碼與安全新技術專題》第1周做業

20180908 2018-2019-2 《密碼與安全新技術專題》第1周做業

課程:《密碼與安全新技術專題》php

班級: 1892
姓名: 楊晨曦
學號:20189208
上課教師:謝四江
上課日期:2019年X月X日
必修/選修: 選修html

1.本次講座的學習總結

1、Web的普遍應用與信息安全發展凸顯的問題
2、Part I     Web應用安全
  • SQL注入
     標準                類別         
按提交字符類型 數字型 字符型 搜索型
按HTTP提交方式 GET\POST\Cookie
  按注入方式   盲注 union注入 報錯注入
   編碼問題    寬字節注入(構造)
  • AQLMAP
  • Havij
  • Pangolin   1. 反射型XSS 2. 存儲型XSS
  • Apache解析漏洞
  • Nginx解析漏洞
3、Part II     隱私安全
  • 用戶軌跡 :移動方向、運動軌跡、運動頻率、
  • 用戶畫像(性別、年齡、直液、搜索記錄、住址)、手機號碼、MAC地址
  • AI 機器學習 啓發式
  • 內網漫遊 隱蔽信道檢測 注入攻擊 網頁木馬 憑證盜竊

2.學習中遇到的問題及解決

  • 問題1:不知道如何找到頂級會議的相關論文?
  • 問題1解決方案:百度了web方向的頂級會議,並查到了會議論文的查找篩選方式,谷歌瀏覽器的頁面翻譯真是太好了,能夠直接看到論簡介。
  • 問題2:論文看不懂。
  • 問題2解決方案:同窗推薦了pdf轉word,word文檔直接全篇翻譯的辦法,感恩。

3.本次講座的學習感悟

web安全是很是複雜而且在快速發展的課題。python

4.web Vulnerabilities最新研究現狀

關於Vulnerabilities的五篇論文web

  1. 摘要
    文章提出一種將機器學習與多目標遺傳算法相結合的自動化方法使
    測試和修復WAF(web application firewalls)自動化。 給定一組合法請求並繞過SQL注入攻擊,文中的方法能夠自動推斷出正則表達式,添加到WAF的規則集,以防止許多攻擊,且讓合法請求經過。
  2. 簡介
    a.SQLi:是一種普遍承認的攻擊技術,攻擊者將惡意SQL代碼片斷注入輸入參數。 當Web應用程序缺乏對輸入參數的正確驗證或清理時,攻擊者可能可以構造輸入值來更改生成的SQL語句的行爲。
    應對網絡攻擊數量和複雜性的增長應部署一個在分層保護基礎設施,包括應用層,網絡層和協議層。
    b.Web應用程序防火牆(WAF)是用於緩解和防止特定類型攻擊的最多見的應用程序級機制,例如SQL注入或跨站點腳本。經過一系列規則-正則表達式,來決定是否丟棄請求。定義WAF規則集的經常使用方法是使用黑名單。WAF的配置容易出錯,雖然攻擊能暴露配置的不足,安全分析師能夠經過添加合適的規則阻止新發現的攻擊,但修補WAF比發現漏洞困難。
  3. 找出WAF過濾規則的思路:
    從已知的繞過攻擊中推斷一些WAF過濾規則(即正則表達式)的任務能夠被視爲-在全部可能的正則表達式集合中找到匹配全部繞過攻擊而不匹配任何合法請求的正則表達式。須要考慮極大的正則表達空間。
    新規則的兩個目標:(1)將WAF阻擋的SQLi攻擊的數量最大化(2)阻擋的合法請求數量最小化
    推倒新規則的本質一個多目標搜索問題 ,優化目標:(1)(2)
    使用多目標遺傳算法NSGA-II推導帕累託有效規則集。
    SQL攻擊來源:旁路攻擊迭代生成新的候選攻擊。
  4. 機器學習實現:
    機器學習方法,特別是DT,能夠用來肯定更有可能表徵繞過WAF的攻擊的字符串模式。字符串模式有助於將搜索集中在正則表達式空間的子區域上,這些子區域更可能包含「好的」候選解決方案。
    兩步法:咱們首先使用DT模型從SQLi攻擊中導出字符串模式; 而後,從匹配這些字符串模式的正則表達式開始,咱們應用遺傳算法來優化它們以儘量多地阻止攻擊,同時阻止儘量少的合法請求。
2、自動修復Web應用程序防火牆
  1. 摘要
    本文闡述了一種新技術,攻擊者能夠經過惡意瀏覽器擴展來執行成功的網絡釣魚攻擊。 已經經過Google Chrome瀏覽器進行了成功的實驗,而且該技術已通過驗證。
  2. 簡介
    網絡釣魚:網絡犯罪。目的是使用網絡/電子郵件欺騙和其餘欺騙技術獲取用戶敏感/我的信息。攻擊者模仿知名網站並將其發佈給用戶。 電子郵件和網絡欺騙技術經過獲取用戶對攻擊者提供的虛假信息的信任來幫助執行網絡釣魚。網絡釣魚是影響銀行,社交和金融市場的最嚴重的網絡犯罪之一。 在2016年9月檢測到104,973個獨特的網絡釣魚網站。
  3. 網絡釣魚原理總結
    (1)電子郵件網絡釣魚: 網絡釣魚者發送欺騙性電子郵件(出現 來自良性實體)在電子郵件回覆中或經過嵌入式欺騙性URL連接請求用戶的我的信息。 URL連接將用戶帶到一個欺騙性網站,該網站看起來相似於被定位的網站。這是進行網絡釣魚攻擊的最多見和最古老的方式之一。
    (2)Web內容注入:網絡 釣魚者建立了一個信息網站,爲用戶提供有價值的信息,但用惡意內容更改網站的部份內容。 這些網站要麼注入惡意代碼,要麼將用戶重定向到網絡釣魚網站,要麼提供惡意廣告/連接以鏈接到Facebook,Gmail,Twitter等。點擊這些廣告/連接會將用戶重定向到網絡釣魚網站。爲了得到用戶對欺騙性連接的信心,網絡釣魚者一般使用連接操做技術。
    (3)基於DNS的網絡釣魚: 網絡釣魚者修改域名系統(DNS)信息,以便對公司URL的請求返回與真實地址不一樣的地址,並將用戶重定向到網絡釣魚網站,該網站看起來相似於目標可信網站。 相似的網絡釣魚方式是經過操縱用戶機器上的主機文件,也稱爲主機文件操做攻擊。
    (4)實時(RT)/控制中繼(CR)中間人(MITM)攻擊: 欺騙性網站獲取用戶憑證明時自動(經過屏幕中繼或用戶的密鑰日誌中繼)或手動中繼用戶憑證,以打破專門設計用於處理網絡釣魚攻擊的單因素/雙因素身份驗證方案。 在CR MITM中,網絡釣魚者經過遠程桌面模塊和其餘欺騙性技術將其終端轉發到用戶的桌面上。而後,用戶直接在網絡釣魚者桌面上輸入他的憑據。
    (5)Tabnabbing: 在Tabnabbing攻擊中,攻擊者取代了 由他的網絡服務器託管的普通網站,當用戶在瀏覽器上切換標籤或在網頁上檢測到丟失焦點事件時,動態地使用網絡釣魚網站。 當用戶切換回選項卡時,他認爲他已經打開了用於登陸特定網站的選項卡,並在欺騙下在網絡釣魚網頁上輸入了他的憑據。
  4. 新的網絡釣魚原理
    基於惡意瀏覽器擴展的網絡釣魚: 那裏 有不少方法能夠經過惡意擴展來執行網絡釣魚攻擊。 其中一些攻擊包括基於惡意擴展的鍵盤記錄/表單數據嗅探和屏幕日誌記錄攻擊,以經過欺騙獲取用戶憑據。這些攻擊還能夠幫助RT MITM等其餘攻擊打破雙因素身份驗證方案。
3、建議使用的基於Web的應用程序和服務的安全模型
  1. 摘要
     本文提出了一種簡單的安全模型,用於改進互聯網應用安全和服務保護,指定訪問控制,加密,cookie和會話管理,防護編程實踐,從開發生命週期的早期階段開始關注安全性,在訪問控制中使用硬件認證技術,而後經過將MD5與Based64混合來提出加密方法,考慮會話和cookie類型以及保證其安全的方法。 此外,這些實踐討論了最重要的Web安全漏洞和訪問控制的弱點以及如何克服這些弱點,提出了一種使用Likert量表根據軟件質量標準ISO 25010測量,分析和評估安全項目的方法,
  2. 簡介
    標準Web安全模型出現安全問題有如下幾個緣由:
    (1)異構和分佈式系統的集成
    (2)公司服務器和政府機構維護的大量敏感信息和數據的可用性
    (3)易於分發的惡意軟件的安全性
    (4)計算機犯罪
    Web系統包括 :( 1)Web客戶端(2)網絡服務(3)後端,用於套件數據庫的信息系統支持 。一些數據緩衝區使用通用安全配置,而其餘數據緩衝區使用特定組件,包括:防火牆,非軍事區,反向代理,負載平衡器,目錄服務器,策略服務器,Web服務器,應用程序服務器,數據庫服務器,以及在HTTP和HTTPS協議中涉及的全部Web安全技術。
    HTTPS被普遍用做在客戶端和服務器之間發送和保留數據的安全機制; 減小和防止惡意攻擊,致使大量部署和維護。並且,它仍然不如預期的那樣安全; 正是在2014年4月3日,據報道,迄今爲止在HTTPS協議中發現的最大和最危險的安全漏洞是心臟出血漏洞。
    公鑰基礎結構沒有提供任何終端系統和內部攻擊的訪問控制方法。
    每一個Web安全模型由四個主要部分組成:(1)傳輸協議(2)Web概念(3)精確威脅模型(4)評估Web安全保護免受漏洞攻擊如跨站點腳本、跨站點請求僞造,保護瀏覽器幀通訊,防止域名系統(DNS)從新綁定,並保護高安全性網站免受網絡攻擊。
    Cookies和會話管理:會話技術旨在爲瀏覽器用戶和Web服務器之間的訪問管理和交互提供一些技術要求的答案。 它們還用於其餘目的,如廣告,剖析,跟蹤等。網絡威脅源於(1)以明文格式傳輸cookie,而且可以在傳輸過程當中進行欺騙或修改。 安全套接字層(SSL)用於在經過網絡傳輸cookie時保護cookie。(2)終端系統威脅涉及漏洞,例如僞造的cookie信息和冒充受害者,而且能夠由攻擊者執行。(3)經過冒充合法網站和收集cookie來完成cookie獲取攻擊。 當攻擊者訪問cookie受害者時,通過驗證的SSL不會保護模擬攻擊中的cookie
  3. 建議
    (1)使用惟一的硬件地址識別用戶設備
    是一種多因素身份驗證,用於提升Web應用程序的安全性,如電子支付,政府交易等。爲系統中的每一個對象提出了硬件認證。 媒體訪問控制地址(MAC)的一個或多個硬件相關值的組合中導出惟一信息來實現硬件的惟一性。 MAC是網段中惟一的硬件地址,它利用因子構建惟一信息,實際上很難在活動服務中進行更改。
    (2)BASE64與MD5合併加密
    對稱加密算法BASE64與MD5合併加密,對系統中的全部者和每一個對象以明文格式隱藏數據,,而且可以使用HTTP。
     Base64算法將用於客戶端和數據服務器端之間的加密/解密數據,並使用客戶端MAC地址做爲加密的硬件驗證密鑰。 MAC地址由6個字節= 48位組成,此功能意味着密鑰具備足夠數量的密鑰以保密,難以增長,減小或檢測
    (3)改進cookie和會話管理
    a.用戶應儘量長時間設置較低的時間,或不時從新更新其身份或身份驗證數據.
    b.必須添加硬件認證做爲其身份的主要因素,以確保其會話不會在其餘設備上使用.
    c.用戶在嘗試執行與當前會話相關的應用程序上的任何任務時應檢查會話的正確性及其可用性,以免任何類型的威脅和攻擊者技術來獲取會話內容.
    d.若是應用程序在運行時發生任何缺陷應通知用戶並應該結束會話事件。
  4. 測評
    根據李克特量表[26]測量和評估安全性,根據前10名OWASP 測試10種威脅,並將訪問控制威脅集做爲接受安全級別的標準。 此外,單獨計算和分析每一個區塊或子系統的風險,以確保全部區塊都清晰,以便對整個項目進行最終評估。 Likert量表能夠從3到12個變量計算出來,而這種方法中最多見的5個變量將使用五種變體(存在,肯定存在,未知,肯定不存在,不存在)。 必須測試的威脅以下:
    (1)SQL注入
    (2)XSS(存儲和反映)
    (3)訪問控制策略,規則和用戶權限
    (4)插入直接對象引用錯誤
    (5)交叉方請求僞造
    (6)Cookie和會話加密以防止會話劫持錯誤
    (7)客戶端和服務器端之間的加密交換參數,以沒法識別的形式存儲在數據庫中的敏感數據
    (8)限制每一個頁面上的URL訪問在加載以前
    (9)防止用戶添加惡意或不可信連接
    (10)開發工具,加密算法和證書更新,並確保它們正常工做
4、Web應用程序安全工具分析
  1. 摘要
    演示了Web應用程序的體系結構,而後列出並評估了普遍的安全漏洞。 這些漏洞包括:傳輸層保護不足,信息泄漏,跨站點腳本和SQL注入。 此外,本文還分析了用於掃描Web應用程序中這些普遍漏洞的工具。 最後,它會針對安全漏洞評估工具,並向Web應用程序的用戶和管理員提供建議
  2. 傳輸層漏洞:不支持SSL/TLS的網站明文發送內容。
    (1)SSLyze 獨立分析python工具
    a.不安全的從新協商測試
    b.掃描弱密碼
    c.檢查SSLv2,SSLv3和TLSv1版本
    d.服務器證書信息轉儲和基本驗證
    e.支持客戶端證書身份驗證
    (2)Qualys SSL Labs 雲安全 網絡安全掃描和漏洞管理提供商
    a.驗證證書以確保其有效且可信
    b.檢查三種類別的服務器配置:協議支持,密鑰交換支持和密碼支持
    c.將類別分數組合成總分(表示爲0到100之間的數字)。 任何類別中的零都會將總分數推至零。 而後,計算字母等級
    應用一系列規則將字母等級(A +,A-B,C,D,E或F)分配給服務器配置的某些方面,這些方面沒法經過數字評分進行評估。
    d.大多數規則會在遇到不須要的功能時下降成績,而某些規則會提升成績(最高爲A +),以獎勵特殊配置
    e.須要支持TLS 1.2才能得到A級。 沒有它,等級上限爲B
    f.低於2048位的密鑰被認爲是弱的,而且等級上限爲B
    g.1024位如下的密鑰被認爲是不安全的,配置將收到F
    h.告做爲評級標準的一部分
    i.於具備一般良好配置且具備一個或多個警告的服務器,引入了新的等級A-

j. 具備特殊配置的服務器引入了新的A +級算法

k. MD5證書籤名如今被認爲是不安全的,配置將收到F
(3)OpenSSL 開源實現的 SSL和TLS協議
容許使用強大的算法對信息進行加密。源和目標都執行所謂的「握手」,在這種狀況下,當它安全地到達目的地時,它們就一個長且複雜的密鑰來解密數據。sql

  1. 信息泄露漏洞
    Netcraft:受歡迎的工具,用於收集與目標域相關的信息。

(1) 提供良好的足跡偵察信息。
(2)可肯定從您的組織泄漏哪些信息,從您組織的站點收集的數據可能會讓您受到可能的攻擊。
(2)運行您本身的域,看看您須要修復什麼以及須要防護什麼。
(3)提供Web服務器和Web託管市場份額分析,包括Web服務器和操做系統檢測。
(4)已啓動多長時間,正常運行時間,最後一次重啓
(5)能夠訪問netcraft.com並輸入所需的域名信息以獲取其目標的全部詳細信息shell

  1. 跨站腳本漏洞
    Cross-Site Scripting Vulnerability(XSS):是一種注入問題,這意味着黑客將惡意腳本注入可信網頁。
    內部XSS :在代碼所在的同一網站上完成注入。黑客會將惡意代碼做爲評論發佈在已向他們展現的網站中,如Facebook或Twitter。代碼將在已打開注入頁面或註釋的任何人的計算機中運行和執行。
    外部XSS :注射可使用外部進行瀏覽器。 惡意代碼不會保存在網站中,黑客是惟一能夠看到惡意代碼的人。
    步驟:
    a).查找易受攻擊的網站併發布所需的Cookie;
    b).構建惡意代碼並驗證它是否會按預期執行;
    c).構建URL。他們還能夠將代碼嵌入網頁和電子郵件中;
    d).嘗試欺騙用戶執行該惡意代碼,最終致使劫持賬戶或收集敏感數據。
    e).SQL注入漏洞
    (1)XSS服務器:server side loot;
    (2)Cross Site Scripter「XSSer」: 是一種自動框架
    用於利用和檢測Web應用程序中的CSS漏洞。
    (3)OWASP Xenotix XSS: 是一個高級框架
    用於XSS漏洞檢測和利用
  2. SQL注入漏洞
    (1)SQL Inject-Me: 這是一個基於Exploit-Me的工具
    用於發現SQL注入漏洞的Firefox。在幫助進行應用程序安全性測試。 此工具中的用戶提交HTML表單,並將表單值替換爲表明SQL注入漏洞的字符串。
    (2)SQLninja: 這是一個旨在檢測的工具
    使用Microsoft SQL Server做爲後端的Web應用程序上的SQL注入漏洞。 此工具的主要目標是在易受攻擊的數據庫服務器上提供遠程訪問。 它是很是強大的工具,所以即便在很是惡劣的環境中也能工做。 當發生SQL注入漏洞時,應該使用此工具來幫助測試人員接管數據庫服務器來管理進程。功能:
    a.提供遠程SQL Server的指紋,例如其版本,執行查詢的用戶和數據庫身份驗證模式。
    b.若是刪除原始自定義xp cmdshell被銷燬,它能夠建立一個新的。
    c.當沒有可用的TCP / UDP端口時,它能夠執行DNS隧道僞shell和ICMP隧道shell。
    d.強制使用'sa'密碼。
    e.掃描目標SQL Server上的TCP / UDP端口到攻擊計算機,查看目標防火牆是否容許使用該端口並使用它。
    (3)Havij: 這是一個有助於滲透的自動化工具
    測試人員檢測Web應用程序上的sql Injection漏洞。 此工具能夠提供後端數據庫的指紋。 因爲其獨特的方法,它是基於SQL注入漏洞的最強大的工具之一。 根據攻擊易受攻擊目標的成功率,它被評爲95%以上。功能:

a. 從DB,轉儲表和列獲取數據,並對服務器執行sql語句。
b.可以恢復DBMS用戶名和密碼哈希值。數據庫

5、高效靈活的發現 PHP應用程序漏洞
  1. 摘要
    提出了一種高度可擴展且靈活的方法來分析可能包含數百萬行代碼的PHP應用程序。 利用最近提出的「代碼屬性圖」概念:這些圖構成了在單個圖結構中包含程序語法,控制流和數據依賴性的代碼的規範表示,進一步豐富了調用邊容許進行過程間分析。 而後將這些圖存儲在圖形數據庫中,該圖形數據庫爲高效且易於編程的圖形奠基了基礎。遍歷能夠識別程序代碼中的缺陷。 
    適合在大規模發現PHP等高級動態腳本語言中的漏洞。 
    很是靈活:生成代碼屬性圖並將它們導入數據庫的大量工做徹底自動化完成的。分析人員能夠根據須要編寫遍從來查詢數據庫,以便查找變量。
  2. 簡介
    PHP:Web應用程序最受歡迎和普遍部署的語言,超過了前千萬網站中的80%(包括Facebook,維基百科,Flickr或Wordpress等普遍使用的平臺),但安全設計很糟:一般產生一個大的攻擊面(例如,服務器上的每一個PHP腳本均可能被攻擊者用做入口點)而且承載設計不一致的函數有巨大反作用。因爲其混亂且不一致的API,PHP特別容易出現編程錯誤,這些錯誤可能致使Web應用程序漏洞,例如SQL注入和跨站點腳本。

參考資料

相關文章
相關標籤/搜索