09 November, 2010

幽默的代碼註解

Standard
程序源代碼中的註釋經常是一個臥虎藏龍的地方,來看看這一輯國外某公司產品中的註釋。注意:看的時候嚴禁喝水或進食。


親愛的代碼維護人員:
當您嘗試優化這段代碼但發現這是一個極端錯誤的決定的時候,請修改下面的計時器,以便警示後人。
總計浪費在這段代碼的時間 = 16小時(喂~後面那個傻逼!)



真的很有問題(掛了再砍掉重練)



謹以此代碼獻給我的妻子達琳,感謝她一直支持我,還有我三個孩子和一隻狗。



神奇代碼,請勿改動(誰吃飽太閒去改常數?)



喝醉啦,遲些再弄



你可能會認為你讀得懂以下的代碼。但是你不會懂的,相信我吧。
要是你嘗試玩弄這段代碼的話,你將會在無盡的通宵中不斷地咒罵自己為什麼會認為自己聰明到可以優化這段代碼。
好了,現在請關閉這個文件去玩點別的吧。



程序員1(於2002年6月7日):在登陸界面臨時加入一些調試代碼
程序員2(於2007年5月22日):臨你個屁啊



反正這個辦法就修復了問題,我也不知道為什麼會這樣



要理解什麼是遞歸的話,請參考本文件的底部
(在文件的底部)
要理解什麼是遞歸的話,請參考本文件的頂部
(參考什麼阿?又不是 GNU is not Unix!)


雙龍入洞; //啊~~好痛(第一次被 2P?)



親愛的未來的我自己,請原諒我。
我有著難以表達的歉意。



我不對以下代碼負責。
是他們逼我寫的,是違背我意願的。



瘋了嗎?歡迎來到斯巴達。



要是你能修正這個問題的話,我會送給你兩個七十二歲的處女



沒有註釋留給你,難寫的代碼必定難讀



IE 瀏覽器的 Hack (在這裡先假設IE是瀏覽器)



有待修正。   修正什麼啊?



要是再讓我看到這種代碼,我會帶著槍來上班的



有只龍在這裡……(內有雷區請慎入)



在你閱讀以下代碼時,你要先搞懂為什麼我在這樣做。
我想讀取一個根節點下面所有的子節點,以便控制根節點不會顯示在選擇框上。但那個傻逼的DBA找了一些某些傻逼的藉口不讓我用索引去讀取這些數據,而要求我用他們傻逼的迭代器。所以有了以下代碼。



當我寫這段代碼的時候,只有老天和我自己知道我在做什麼。
現在,只剩老天知道了。

29 July, 2010

程序人生演講內容摘要 ---侯捷

Standard

如果你不曾聽過侯捷的名字,不曾知道侯捷做的事情,你不可能有興趣走入會場。因此,各位遠道而來,我竊以為,無非想看看侯捷本人,聽聽他說話。如果你期盼在這種場合聽到某某技術的剖析,某某趨勢的發展,肯定你會失望。我不是趨勢專家,對此也毫無興趣。台上說話和台下聊天不同,我不能也不敢講我沒有心得沒有研究的話題。「程序人生」這個話題旨在讓大家對一個你感興趣的人(侯捷我)的學習歷程有些瞭解,或許從中給你一些靈感或激勵。

我在一個被暱稱為「少林寺」的地方,磨練三年。後半期因為發現了自己濃烈的興趣與不錯的天賦,決定轉向技術寫作與教育這條路。30歲之後的我,行事常思「貢獻度」,我知道自己在技術寫作與教育這條路上能夠走得比程式開發更好,所以決定把自己擺在最適當的位置。一口食物,放在嘴裡是佳餚,吐出來就成了穢物。天生我材必有用,每個人都應該仔細思考,自己真正的興趣和才能在哪裡。很多人都問,30歲之後做不動程序員了怎麼辦。30年正是英年,體力和智力和成熟度都正達到巔峰,怎麼會做不動程序?想往管理階層走當然很好,那就努力充實自己,並且捫心自問,你做管理快樂嗎?要知道,人事絕對比機器讓你更焦頭爛額。如果你決定爭取一個粥少僧多的職位,就不要再問「怎麼辦」。還能怎麼辦呢?就努力以赴呀!比賽還沒開始就問「輸了怎麼辦」,這不像話,你注定要輸。

[1] 程序人生演講內容摘要 ---侯捷
[2] 程序人生演講內容摘要 ---侯捷
[3] 程序人生演講內容摘要 ---侯捷
[4] 程序人生演講內容摘要 ---侯捷

原址:http://kb.cnblogs.com/page/42112/

笑死人的布林代數插畫

Standard

image

對學過電路基礎的人來說,以開關(Switch)來表示布林代數(Boolean Algebra )運算非常直觀。

不過那些連沒有學過電路的人要怎麼讓他們了解運算方式?

顯然地,這則插畫不但傳神地表達出含意且相當具有幽默感!

09 July, 2010

16 February, 2010

信息安全走向漫談

Standard

來源:http://hi.baidu.com/tombkeeper

以下是2006年8月19日在B105技術沙龍演講的講稿。

信息安全走向漫談

    村長<airsupply#0x557.org>邀我來B105沙龍和大家閒扯。而我近來的工作是拉磨居多,接客其次,實在沒有什麼新貨。村長說:不必講技術,可以談談「信息安全的現狀和未來」。我思前想後,覺得這個題目綱領性太強,我這點資歷講起來顯然自不量力。還是改稱「信息安全走向漫談」顯得比較低調。漫談漫談,就是漫天亂談,談錯了不要緊。萬一談得對,就算蒙上了。

信息安全走向漫談(一)

信息安全走向漫談(二)

信息安全走向漫談(三)

信息安全走向漫談(四)

以上四篇「漫談」是根據當時講的PPT和備註整理出來的。當時講的肯定比這些要多,不過大致的意思就這些,主要是「紅旗還能打多久」的問題。當時Vista剛剛出來,初步研究後,自己也想過「紅旗還能打多久」,所以借B105沙龍,把一些想法和大家分享了一下。

如果僅從技術角度著眼,那麼,今天你搞不出來,就會認為紅旗要倒了;明天搞出來了,就會認為紅旗還能飄。但是從事物發展的一般規律來看,紅旗絕不會一套新技術新辦法就倒了。

就像挖石油。剛開始油多,好挖,隨便一鍬下去就噴一身,所以區分度不明顯。後來油慢慢少了,難挖的油田也要挖,還是能挖出來。萬一有天油真挖光了,怎麼辦?別忘了,挖油以前,這把鍬是挖煤的,挖煤以前,這把鍬是挖土的。腳下油沒了,頭上還有氦三

這是我當時的觀點,現在也還是這麼認為的。不過現在更有底氣一點。因為,今天即使從技術角度看,紅旗也還能打幾天。

我去年在一篇Blog中寫過,對部分類型的漏洞來說,DEP+ALSR+SEHOP已經浮雲。後來在SSCON 2009上講《安全漏洞的下一個十年》,提了未來對抗這些的辦法大致可以分成兩類:一類很黃,一類很暴力。也給大家看了一個「很黃」的PoC(謝謝vessial的整理,省得我寫了)。之所以用那個PoC,是因為它非常PoC,無害,又剛好能說明點問題。

那天yuange在Full Disclosure上發了張圖(http://seclists.org/fulldisclosure/2010/Jan/614),我沒看到那張圖,不過從留在Full Disclosure裡那行信息來看,用的可能也是「很黃」的一類辦法。不過那應該已經超越PoC的範疇了。估計也就因為這個,所以現在圖已經看不到。不過這至少可以告訴大家:紅旗還在飄。

03 February, 2010

Scan of the Month 挑戰文集

Standard

29 January, 2010

這到底是不是故意貼出來炫耀的?

Standard

以下八卦由 j4ck 大大獨家提供。

NOSEC 官方有則來自某網誌對於 iiScan 的評價:

iiScan_news_from_japan_at_nosec.org

以下感謝網友智乃提供精闢的中文翻譯:

Invitation Code是必要的嗎? 在某ML流傳著某個傢伙已經使用完了
因為想用看看這個工具,所以想打聽看看
問問看的話會有怎樣嗎? 中國製的工具之類的真的很可怕嗎?

Blog 文章的內容是某日人網友擔心中國製的都是黑心產品!

難道這位使用 root 帳號登錄的網站維護人員沒注意在看嗎?

我論漏洞挖掘的難度與態度

Standard
引用:中華電信:上週微軟漏洞 防毒軟體難偵測後門
所謂0day漏洞便是作業系統廠商尚未推出修補程式,在這次攻擊手法中,幾乎所有版本IE瀏覽器在攻擊發生時皆受影響,且經過測試各家防毒軟體的偵測能力,大部分防毒軟體皆無法偵測該植入的後門程式,對於使用者的威脅指數非常巨大。
我想大概是因為 MS 的程式是封閉源碼的,所以只能用 Black-box 來進行 Fuzzing 的動作,這點防毒軟體實驗室實在不比坊間駭客來得有優勢(其實就是黑帽與白帽的相互較勁),加上那些大廠規定假如發現重大威脅都不能隨便公報(不能公報沒成就感阿...),因為正式的 Advisor 都有跟他們簽署 NDA(Non-Disclosure Agreement) 保密協議,我想多數人如果有找到弱點通常都先丟黑市賣錢吧!現在有看到 Exploit 幾乎都是被玩好幾手,玩到 Vendor 有心力 Handle 之後才會丟出來,如此以求能縮短蔓延時期的時間長度。
迷:如果真的都有簽署 NDA 的話,我覺得應該會先自由心證(內心的自我抗戰!),然後才決定是否告知 Vendor 一聲,所以把 NDA 的定義套用在這裡也似乎覺得荒謬:
A non-disclosure agreement (NDA), also known as a confidentiality agreement, confidential disclosure agreement (CDA), proprietary information agreement (PIA), or secrecy agreement, is a legal contract between at least two parties that outlines confidential material, knowledge, or information that the parties wish to share with one another for certain purposes, but wish to restrict access to by third parties. It is a contract through which the parties agree not to disclose information covered by the agreement.
Vendor: You must promise DO NOT leak any information but keep it confidential.
And then, Advisor told the third party similar word again.
And and then, the third party applied the same policy on the fourth party.
And*N then, ……
Thus, the proverb goes, “Bad news has wings”.

「瓜田李下」大家都聽過吧?

Standard

引用:中國網攻Google 證據被掌握

自從Google發佈遭駭客攻擊以來,多家電腦安全公司均表示支持Google認為此舉出自中國政府的說法,不過大都無法提出有效證據,但現在情況已經有改觀;《紐約時報》週三報導,一名美國的電腦安全研究人員,說他已經發現他相信是強有力的證據,證實被用在攻擊Google的軟體程式上,有中國程式設計師的數位指紋

因為我對這則新聞很好奇,所以尋線找到那所謂美國安全研究人員的實驗室網誌,在該篇分析報告發現以下訊息:

There are many different CRC algorithms and implementations of those algorithms, but this is one I had not previously seen in any of my reverse-engineering efforts.

「只此一家,絕無分號」的 CRC 演算法實做。

The full paper was published in simplified Chinese characters, and all existing references and publications of the sample source code seem to be exclusively on Chinese websites.

整篇 Paper 用簡體中文寫作且只在中文網站找得到。

This information strongly indicates the Aurora codebase originated with someone who is comfortable reading simplified Chinese. Although source code itself is not restrained by any particular human language or nationality, most programmers reuse code documented in their native language.

讀中文最輕鬆的首先就懷疑是華語人士吧?

多數人寫程式都會用他們的母語當註解吧?

所以最後的結論是:

(in light of the harsh penalties we have seen handed out in communist China for other computer intrusion offenses), this creates speculation around whether the attacks could be state-sponsored.

在稍早的幾個計算機犯罪事件中,中共當局都是嚴加處置,所以有可能是因為國家資助才造成這次的局面!

題外話:對岸隱藏的策略越來越先進,我還記得之前在分析的樣本發現過下面這種程式片段:

Malware_ZongCan

Google_ZongCan

看來在**單位作程式研發連資料夾的名稱都不能亂取,萬一編譯之後存在 Binary 中,事情就大條了。

MS COFEE 工具疑似洩漏

Standard

Last November, the code for Microsoft's Microsoft's COFEE (Computer Online Forensic Evidence Extractor) forensics tool was leaked to the Internet. COFEE is distributed free to law enforcement agencies all over the world and used to gather digital evidence from computers that are seized in connection with criminal activity. Microsoft does not make it available to those outside the law enforcement community.
http://www.crunchgear.com/2009/11/06/siren-gif-mic...ernet/

Then in December, several sites reported on the release of software called DECAF that could detect the presence of  imageCOFEE  and delete its files and processes as well as clearing its log files. You can read more about DECAF here:
http://www.theregister.co.uk/2009/12/14/microsoft_...decaf/   

On December 18, that first version was pulled by its makers and it was labeled as fake. Now a new version, DECAF 2, is out there. The new version doesn't limit itself to COFEE, but also detects other forensics software including EnCase, Helix, Forensic Toolkit and more. DECAF developers say the first version did work and was removed because of legal concerns, and that they were trying to raise awareness for 「better security and more privacy tools.」
http://www.thetechherald.com/article.php/200953/50...unched

下載資訊:http://www.xun6.com/file/631805d12/COFEE-Microsoft+tools.rar.html