㈠ 怎麼樣去攻擊別人的app
像你進入了這個網站的話,我建議你可以選擇報警,但是你要的提供相關的證據。比如說數額
㈡ 怎麼攻擊別人軟體伺服器 求方法
。。。。。。。。。。最基本可以是一秒使伺服器請求爆滿(過載)使伺服器癱瘓,。。。。。。不多說什麼,起碼你學過計算機,會編程,會基本知道伺服器IP以及xx該伺服器的防護什麼的。。。。。。。你不會編程這些=瞎想(不抱括你出錢請搞)。。。而且重點是會犯法。。。知名度越高的軟體你要蹲更久
㈢ 什麼是流量攻擊,怎麼能攻擊別人軟體,讓他的軟體癱瘓
自己被流量攻擊,可以聯系自己主機商,讓他們幫忙來處理,畢竟主機商在數據處理這一塊比我們要有經驗得多,而且大多數是團隊,對於普通的刷流量方式,基本上能清除,網路安全這塊伺服器商還算是專業的。
怎麼攻擊別人這種還是少去做吧,因為你攻擊他可能就是在攻擊伺服器商,處理不好可能要吃官司。
㈣ 如何攻破軟體
如何攻破軟體 James A.Whittaker 摘要 本文討論一系列用於發現軟體設計與開發中的缺陷的方法(所謂的「攻擊」)。這些攻擊 都是手工、探索性的測試方式,設計和執行都是動態的、幾乎不需要額外開銷。這些攻擊是 經過對上百個真實的軟體缺陷進行研究並且抽象出他們的成因和現象之後構造出來的。經過 佛羅里達理工學院軟體測試方向的學員兩個學期的細化分析,已經歸納了數十個旨在發現缺 陷的攻擊策略。這些攻擊策略被證明非常受用,已經發現了上百個額外的缺點——都是由這 些攻擊策略直接導致的——在短時間內對產品幾乎沒有任何了解的情況下。本文介紹上述攻 擊策略的一個子集並說明他們是如何在已發布產品中發現真實缺陷。 簡介 是什麼成就了一名優秀的測試人員?是什麼樣的天賦使他們對bug 如此敏感?這樣的 能力是可以傳授的嗎? 這些問題就是本文的主旨。我相信優秀的測試人員更多是後天造就而不是先天生成的, 事實上,多年下來許多測試人員自己似乎積累了一個攻擊策略的標准庫。每當他們面臨測試 難題時就會重組手頭的攻擊策略,從而總是能夠發現缺陷。盡管這些攻擊策略很少被記錄下 來,它們確確實實在手工測試和測試傳承中扮演著重要的角色。 通過對真實的測試人員和現實缺陷的研究,我們開始著手文檔化這一財富。在本文中, 我們探索來自於該項工程的一部分成果。下一個挑戰是對這些攻擊施行自動化,找到有效使 用的具體策略。 攻擊無異於以下三個大類: 輸入/輸出攻擊 數據攻擊 運算攻擊 每個類型中都有特定類型的攻擊,它們導致十分有趣的軟體故障。在之後的部分我以具 體的缺陷為例介紹每個大類下的攻擊類型。涉及到的bug 都來自於微軟公司的產品。我認為 這不該被看作是一種反微軟的行為。事實上,它作為軟體行業霸主的事實使它自然而然地成 為了「眾矢之的」。但不能就這樣認為微軟的產品相對於其他軟體產商有更多的缺陷。本文 中提到的攻擊策略幾乎成功攻擊過許多公司的軟體產品,這些產品運行在你可以想到的任何 平台上。我的經驗表明,不管開發人員開發的應用產品域是什麼、使用的操作系統有什麼差 異亦或是否發布源碼,他們都在高頻度地製造bugs。如果他們是web 開發人員,那就更不 用費心了,因為web 程序本身非常容易崩潰。 輸入/輸出攻擊 針對輸入/輸出的攻擊就是測試人員所說的「黑盒」測試,因為不需要任何有關內部數 據或計算的信息來支持測試執行。事實上,這是測試中最常見的一種,因為閱讀源碼不僅乏 味、費時,並且通常收益甚微,除非你知道自己到底在尋找什麼類型的bug(我們將在接下 來的兩部分內容里討論什麼是你應該試圖尋找的)。 輸入/輸出攻擊 單一輸入攻擊 迫使所有的報錯信息出現 強制指定默認值 嘗試所有可用的字元集 迫使輸出區域大小改變 引發顯示區域溢出 迫使屏幕刷新問題出現 輸入值組合攻擊 迫使無效輸出出現 找出不能共存的輸入值組合 輸入序列攻擊 迫使無效輸出出現 多次重復同樣的輸入序列 單一輸入攻擊 這一類攻擊是對使用單一輸入(從變數輸入的角度來說)的行為進行的檢查。我們試圖 發現在大部分數據都正常工作的情況下由一個單一的輸入導致應用崩潰的情況。其實除了單 單從邊界值上考慮以外還有很多別的方式來選擇輸入用例,特別是當你希望找到真正被開發 認可的bug,而不是僅僅作為未定義的需求而忽略掉。 首先給出一些看 似簡單但不易施行的 建議: 確保所有的報錯信息 都出現一遍。 不能使程序正常 地中止或結束的通常 就是所謂的bug。很多 報錯信息僅僅是迫使程序停止來顯示一條報錯信息,然後接著執行下一條輸入或者直到定時 器超時而已。但是,也有其他一些報錯信息則是來自於被程序拋出和異常處理器被執行引發 的異常。異常處理器(或中央錯誤處理線程)因其指針突然改變而數據狀態不產生相應變化, 通常會存在問題。異常處理器執行的瞬間,各種各樣的數據問題接踵而至:文件未關閉、內 存未釋放、數據未初始化。當控制重新回到主線程,很難判斷錯誤處理器是在什麼時刻被調 用,又會有怎樣的遺留問題在等待粗心大意的開發人員:因為文件沒有關閉導致打開文件失 敗、在沒有初始化前就開始使用數據。如果我們能確保在所有的報錯信息都出現過之後系統 依然正常工作,那麼也算是為用戶省去了不少麻煩(更不用說我們的維護工程師了)。 圖1 展示了我的學生在微軟 Word 2000 中發現的一個有趣的bug,一條錯誤提示不知為 何連續出現了兩次。這個bug 是在通過單一輸入攻擊錯誤處理線程的過程中發現的。 確保軟體指定默認值。 開發人員通常不記得在用戶輸入越界或給參數設置不合理的值時指定默認的值。有時候 強制設立默認值意味著什麼也不做——然而正因為想不到,這一舉措甚至難倒了優秀的開發 人員。例如,在Word 2000 中,如下對話框中有一個選擇框,當不對其做任何修改時再次打 開對話框,該控制項將消失。對比左右圖片中的對話框。你發現什麼控制項消失了嗎? 有的時候指定默認值需要先改變值的當前設定,然後將其設定為一個不合理的值。這種 連續的轉換保證了再轉換成其他可用的值前是經過設置默認值。 嘗試輸入變數的所有可用的字元集。 有的輸入問題很簡單,特別是當你使用了類似$,%,#,引號等等字元時,這些字元在 許多編程語言中有特殊意義並且作為輸入被讀入時通常需要特殊處理。如果開發人員未考慮 這種情況,則這些輸入可能導致程序的失敗。 通過改變輸入內容的多少引發輸出區域的改變。 聚焦於輸出本身是一種發現bug 頗有成效但是極少使用的方法。其思想是:先假定一種 表現為bug 的輸出或者行為,然後尋找能夠導致這種現場產生的輸入。以上所述的一個簡單 的攻擊例子就是通過改變輸入值和輸入字元串的長度來引發輸出區域大小的重新計算。 一個很好的概念性例子是將時鍾的時間設置為9:59,然後等待它轉到10:00。一開始顯 示區域是4 個字元長度而後來是5。反過來,我們設定時間為12:59(5 個字元),然後等待 其轉變為1:00(4 個字元)。開發人員通常只會對初始化為空白的情況進行處理而不曾考慮 到顯示區域已有數據的情況下如何更新該區域以顯示不同長度的數據。 舉個例子,PowerPoint 中的「藝術字」功能中有個有趣的bug。假定我們輸入下圖中的 一個長的字元串。 可以發現因為字元串太長,並不是整個字元串都能顯示出來。但這不是問題的關鍵。點 擊確認按鈕時觸發兩個事件。首先,程序計算出需要的輸出區域大小,然後將輸入的文字填 充進去。現在,我們編輯該字元串,將它改為單個字元。 可以發現盡管現在只有單個字元,字體大小也沒有改變,但顯示區域大小卻沒有發生改 變。進一步看。如果再次編輯該字元串為多行的字元串,輸出結果更有意思。 我想這部分已經介紹得比較清楚了,我們將進入下一部分。 確保對顯示區域的邊界的檢查。 這是基於輸出的另一種攻擊思路,與之前的十分類似。然而,不同於之前著力於導致顯 示區域內部出錯,這次我們將精力集中在顯示區域的外部。並且顯示區域將不再重新計算顯 示邊界而僅僅是考慮邊界溢出。 再以PowerPoint 為例,我們可以先畫一個文本框,然後輸入一個帶上標的字元串。放 大該字元串的字體使上標的上半部分被截斷。這一問題將連同之後的相關問題一起說明。 引發屏幕刷新問題。 這是使用windows 圖形用戶界面的用戶會遇到的主要問題。對開發人員來說,更是一 個大問題:過度的刷新將導致程序變慢,而不刷新又會導致大大小小的問題,小至要求用戶 強制刷新,大到導致用戶的操作失敗。 通常通過在屏幕上添加、刪除和移動元素來觸發頁面刷新。這將導致背景重新繪制,如 果頁面不能正確、及時地作出相應,那麼這就是通常意義上的bug。其中,嘗試變化所移動 的元素的距離是一種較好的方式,可以移動一點點,接著移動一大截,移動一兩次,接著移 動很多次。 接著說回上面例子中的帶上標的字元串,試著每次用滑鼠拖動它移動一些距離,就會發 現令人討厭的問題,如下圖所示。 在Office 2000 中 經常出現的另一個與 屏幕刷新相關的問題 是文本的異常消失。 這一討厭的問題在 Word 的頁面邊界附近 出現。 輸入值組合攻擊 第二類輸入/輸出 bug 主要針對多個共 同作用或相互影響的輸入。例如,一個通過兩個參數調用的API,其中一個參數的取值建立 在另一個參數取值的基礎上。通常,bug 正是出在值組合上,因為代碼的邏輯關系復雜。 找出不能共存的輸入值的組合。 那麼哪些值的組合是有問題的?這個問題目前還處於積極研究中,但是我們已經找到了 一個特別有效地方法,那就是先確定期望獲得的輸出,然後試著去找到對應的輸入值的組合。 嘗試產生無效的輸出。 這是一種適用於測試人員對問題域十分清楚的有效攻擊方法。例如,當你在測試一個計 算器並且清楚部分功能點的結果有限制時,試圖找到超出范圍的結果所對應的輸入值組合是 值得的。但是,如果你不熟悉數學,那麼這種努力很可能是浪費時間——你甚至可能將一個 不正確的結果當成正確的。 有時候windows 本身會給出提示,告訴你哪些輸入是相互關聯的。此時,測試人員可 以去測試這些值的范圍,並且嘗試觸犯既定的關系。 輸入序列攻擊 軟體中的輸入就像一種正式的語言。單一的輸入相當於組成語言的字母,輸入的字元串 類似構成語言的句子。其中一些句子應該通過控制項和輸入區域的啟用與禁用被過濾。通過盡 可能多地輸入字元串、改變輸入的順序來測試這種問題。 選擇導致無效輸出的輸入序列。 和上文描述這是一種找到問題輸入組合的好方法一樣,這同樣是找出有問題的輸入序列 的好方法。例如,當我們發現了Office 2000 中的一個導致文本消失的問題後,對PowerPoint 幻燈片中標題文本框進行攻擊。如下的一組屏幕截圖再現了一個特定的輸入序列是如何導致 文本消失的。 有趣的是僅僅將文本框旋轉180 度並不能發現這個bug。必須按照這樣的操作順序:旋 轉180 度後,再旋轉10 度(或者更多)。逆向執行以上操作並不能修正這一問題,每當點擊 標題外部區域,該標題內容就會消失。 改變輸入的順序之所以善於發現bug 是因為很多操作自身成功執行的同時會遺留很多 問題,它們將導致之後的操作失敗。對輸入序列進行徹底的檢查會暴露出很多這樣的問題。 然而有時候,下面這種攻擊表明:為了發現bug,根本不需要使用多種多樣的輸入序列。 多次重復同樣的輸入序列。 這種方式會對資源造成大規模佔用,並且對存儲數據空間造成壓力,當然也包括發現其 他負面的遺留問題。遺憾的是,大多數應用程序並不清楚自身空間和時間的限制,而許多開 發人員傾向於假定資源總是足夠可用的。 在Word 的公式編輯器中可以找到這方面的一個例子,程序本身似乎並不清楚它只能處 理10 層嵌套括弧的計算。 數據攻擊 數據是軟體的命脈;如果你設法破壞了它,那麼程序將不得不使用被破壞的數據,這之 後得到的就不是合理的結果。所以理解數據是如何、在何處建立是必要的。 從本質上講,數據的存儲是通過讀取輸入,然後將其存儲在內部或者存儲一些內部計算 的結果來實現的。因此,測試正是通過提供輸入和執行計算來實現數據在應用程序中的傳遞。 數據攻擊遵循以下簡單原則。 數據攻擊 變數值攻擊 1.存儲不正確的數據類型 2.使數據值超過允許的范圍 數據單元大小攻擊 3.溢出輸入緩沖區 4.存儲過多的值 5.存儲太少的值 數據訪問攻擊 6.找出同一數據的不同修改方式 變數值攻擊 這一類的攻擊需要對內部存儲的數據對象的數據類型和合法值進行檢查。如果有對源碼 的許可權則這些信息可以輕易得到,但是,通過小小的探索性測試和對錯誤信息的關注也可以 確定大致的類型信息。 改變輸入的數據類型來找出不匹配的類型。 在需要整數的區域輸入字元(和類似的攻擊)已經被證明十分有效,但隨著現代編程語 言對類型檢查和類型轉換的處理變得容易,我們發現這樣的攻擊相對之前已經不再那麼有 效。 使數據值超過允許的范圍。 被存儲的變數數據和輸入的變數數據一樣,這樣的攻擊方式同樣適用。 數據單元大小攻擊 第二類數據攻擊旨在觸發數據結構的溢出和下溢。換句話說。攻擊試圖打破預先設定的 數據對象的大小限制。 首先要說的就是典型的緩沖區溢出。 溢出輸入緩沖區。 此處通過輸入長字元串導致輸入緩沖區溢出。這是黑客們偏好的攻擊方式,因為有時候 應用程序在崩潰之後會繼續執行進程。若一名黑客將一段可執行代碼附在一個長字元串中輸 入,程序很可能執行這段代碼。 在Word 2000 中的一個緩沖區溢出問題就是這樣一個可被利用的bug。此bug 被發現在 查找/替換功能中,如下所示。有趣的是,「查找」這一欄位被合理地加以限制而「替換」沒 有。 同一數據結構 存儲過多的值。 復雜地數 據結構諸如數 組、矩陣和列表 在測試中不僅 僅要考慮存儲 在其中的數值, 還要考慮存儲 值的數目。 同一數據結構 存儲過少的值。 當數據結 構允許增加和 刪除信息時,通 常在做了n-1 次增加的同時穿插著或在其之後做n 次刪除操作會導致攻擊成功。 數據訪問攻擊 我的朋友Alan Jorgensen 喜歡用「右手不明左手所為」這句話來形容這一類bug。道理 很簡單,但開發人員卻常倒在這一類攻擊下:在很多程序中通常任何任務都能通過多種途徑 完成。對測試人員來說,這意味著同一個函數可以由多個入口來調用,這些入口都必須確保 該函數的初始條件得到滿足。 一個極好的例子是我的學生在PowerPoint 中發現的表格數據大小相關的崩潰性bug。創 建表格時最大尺寸被限定為25×25。然而,可以創建一個25×25 的表格,然後為其添加行 和列——導致應用程序崩潰。這就是說,程序一方面不允許26×26 的表格存在而另一方面 卻並不清楚這個規則的存在。 運算攻擊 運算攻擊 操作數攻擊 使用非法操作數進行運算 找出非法操作數組合 結果攻擊 使運算結果過大 使運算結果過小 功能相互作用攻擊 找出共享數據不佳的功能 操作數攻擊 這類攻擊需要知道在一個或更多內部運算中操作數的數據類型和可用的值。如果有源碼 許可權則這些信息可以輕易獲得。否則,測試人員必須盡最大努力去弄清楚正在進行的運算具 體是什麼、使用的是什麼數據類型。 觸發由非法操作數引起的運算。 有時候輸入或存儲的數據處於合法的范圍之中,但是在某些運算類型中卻是非法的。被 0 除就是一個很好的例子。0 是一個合法的整數,但作為除法運算的除數卻是非法的。 找出不能共存的操作數的組合。 涉及到一個以上操作數的運算不僅受制於上面的攻擊,同時存在操作數沖突的可能性。 結果攻擊 第二類運算攻擊旨在造成存儲運算結果的數據對象的溢出和下溢。 試圖造成運算結果過大而存儲失敗。 就算是簡單如y=x+1 這樣的運算在數值邊界上也常出問題。如果x 和y 都是2 比特的 整數並且x 的值為32768,則這一運算將失敗,因為結果將會造成存儲溢出。 試圖造成運算結果過小而存儲失敗。 和上文相同,不同的是使用y=x-1 並且使x 的值為-32767。 功能相互作用攻擊 文章中討論的這最後一類攻擊或許算是所有種類的鼻祖,可以用來區分測試菜鳥和專業 人員:功能的相互作用。問題沒有什麼新意:不同的應用程序功能共享同一數據空間。兩種 功能的相互作用導致應用程序失敗,不是因為對數據處理的設定不同,就是因為產生了不良 副作用。 但是哪些功能共享數據並且能夠在沖突情況下實現數據轉化目前還是測試領域中一個 開放的問題。目前我們正停留在不斷地嘗試階段。下面這個例子足以說明情況。 這個例子給出了在Word 2000 中的同一頁面上合並腳注和雙列時出現的一個出人意料 的結果。問題在於:Word 從注釋的引用點計算腳注的頁面寬度。所以,若同一頁面上存在 兩條腳注,一條被處於雙列位置的內容所引用,另一條則被處於單列位置的內容所引用,單 列腳注會將雙列腳注擠到下一頁面。同時被擠掉的還有引用點至頁面底部間的文本。 下面的屏幕 截圖形象地 說明了問題。 第二列的文 本 去 哪 里 了?連同腳 注一起處在 下一頁。你會 任由文檔像 這 樣 顯 示 嗎?在找到解決方法(這意味著你得花時間去整理)前你將不得不忍受這一現狀。 結論 簡單遍歷一遍上面羅列的21種攻擊策略可以覆蓋應用程序的大部分功能。事實上,施行 一次成功的攻擊通常意味著嘗試各種可能性,走過很多死胡同。但是僅僅因為部分這一類探 索性方法發現不了bug並不意味著它們沒有用。首先,這段時間使用應用程序幫助測試人員 熟悉程序的各種功能,從而產生新的攻擊思路。其次,測試通過是好的消息!它們表明,產 品是可靠的:尤其當這組測試是上面所說的惡意攻擊。如果代碼可以承受這樣的測試過程, 它幾乎可以應對用戶作出的任何操作。 另外,永遠不要低估了測試時懷揣一個具體目標的作用。我見過太多測試人員把時間浪 費在毫無目的地輸入或者隨機地調用API試圖導致軟體出錯。實行測試意味著制定明確的目 標——基於會出錯的點——然後設計測試用例來實踐該目標。這樣,每個測試用例都有目的 性並且進度可以被隨時控制。 最後,記住,測試應該是有趣的。攻擊這一比喻正是對測試的這一特性很好的詮釋並且 還為愉快的消遣時光添加了些許作料。狩獵愉快!
㈤ 怎麼攻擊手機app
怎麼攻擊手機的?APP1般想要攻擊手機的APP的話,可不是一般人能做到的,這個肯定是黑客才能做得到,一般做這種事都是屬於違法的。不要做這種事情
㈥ 受到app攻擊是怎麼回事
方法/步驟
將IP和MAC地址進行邦定
通過是在路由器端將區域網中各計算機的IP地址與其對應的網卡MAC地址實行邦定。具體操作方法:打開路由器管理界面,點擊「IP與MAC邦定」→「靜態ARP邦定設置」項,然後在右側點擊「添加單個項目」按鈕。
在打開的「ARP靜態邦定」窗口中,輸入要邦定的IP和MAC,然後點擊「保存」按鈕即可。用同樣的方法添對區域網中其它計算機進行IP與MAC地址邦定。最後點擊「使所有條目生效」按鈕即可。
利用網路防護類軟體對網關IP進行邦定
打開「360安全衛士」,在程序主界面中點擊「更多」按鈕。
在程序列表中點擊「流量防火牆」,然後在打開的窗口中切換至「區域網防護」選項卡。
然後將「網關邦定」模式設置為「手機邦定」,點擊「詳情/設置」按鈕。
在打開的「添加保護網關IP和MAC」窗口中,點擊「添加網關」按鈕來手動邦定網關IP和MAC地址。
至此,區域網ARP沖突現象就得到有效遏制。此時網速就正常了。