
最近在研究短網址的實作方法,在Google上找到一篇對岸的文章:
Short URL (短网址) 算法C#实现 而這篇所參考的方法則是下列國外的文章:
Implement your own short URL 有興趣的朋友可以閱讀上面兩篇文章,本篇文章算是前面兩篇的筆記。
卑微研究生 發表在 痞客邦 留言(0) 人氣(2,230)

緩衝區溢位(Buffer Overflow)是相當常見的攻擊手法,可以說透過此手法破解軟體的比例高達八成(立委調)。以下圖來說明它的理論,在程式中呼叫函式時,會將要返回的位址塞入堆疊中,也就是ESP值,然後是EBP值、函式中的變數。如果能覆寫掉ESP值,將它指向惡意程式碼,就能達到破解或攻擊的目的。 以下面C++程式碼為例,這裡宣告了兩個陣列,大小各為2。
卑微研究生 發表在 痞客邦 留言(1) 人氣(7,891)

ViewState大概ASP.NET裡最偉大的發明,因為它提供與WinForm一致的開發經驗,讓寫單機AP的開發人員也能無痛(?)轉移到Web上的開發。一般的ASP.NET網頁,在原始碼中會有如下圖的hidden value。 其實ViewState是以Base64編碼,還原後可以看見部份文字,實際上它是將物件序列化後再轉為Base64字串,接下來示範如何將ViewState還原。
Demo程式介面,上面的TextBox是ViewState值,下面則是顯示還原後的結果。
卑微研究生 發表在 痞客邦 留言(0) 人氣(1,097)

網頁在登入後,通常都會寫入一組Cookie,好讓網站之後可以驗證是否已登入過,但Cookie尤於是寫在本機端,在對網站發出Http Request時一併將Cookie傳送過去,如果傳送中途被第三方截走,就會有身份被盜用的風險。 在這裡以某個EC網站為例,首先安裝下列Chrome元件,這是一個可以編輯Cookie的工具。 安裝之後,用IE在某EC網站登入,並複製Key為ASP.NET_SessionId的值。
卑微研究生 發表在 痞客邦 留言(0) 人氣(1,237)

最近在看
Ultra-Fast ASP.NET的Kindle版本,裡面提到IIS及ASP.NET會輸出額外的Http Header,這些額外的Header某方面來說算是提供駭客有用的資訊,所以能移除就移除掉,本篇文章將會講解書中提供的方法。 首先來看,在預設的情況下,IIS及ASP.NET會輸出什麼樣的Http Header。 從上圖可以知道,Header提供了IIS版本、後端平台及.NET版本。如果Url內包含aspx的副檔名,這些資訊其實無所謂,但假如已經使用ASP.NET MVC來開發網站,其實可以移掉這些資訊,拖延駭客攻擊網站的時間。
卑微研究生 發表在 痞客邦 留言(0) 人氣(1,451)

CKEditor是一個好用的HTML編輯器,支援許多平台,它也有ASP.NET的版本,使用上相當容易,因為它是包裝成一個控制項,只要拖進頁面就能使用。 CKEditor可以到下列網址下載: http://ckeditor.com/download 雖然在下也是下載ASP.NET版本,但測試後,還是覺得使用純JS的版本會比較有彈性,至少可以跟jQuery做整合。 使上的方法很簡單,CKEditor下載後,將裡面的ckeditor資料夾複製進專案裡,然後在頁面上引用下列檔案。
卑微研究生 發表在 痞客邦 留言(2) 人氣(8,817)

如果你的搜尋引擎有特定的用途,例如用在圖書館、電子商務網站等,勢必會針對某些欄位做搜尋,例如會對商品的價格做限制,或是限定在某個上架日期。這些欄位都不是以純文字儲存,而是特定的資料型態,以商品價格來說,它是以整數來儲存。那麼,在搜尋引擎索引時,就必須特別處理。 下面將會以商品價格做為示範,首先是資料的索引,前篇文章都是以Field做索引,但針對價格這種數字型別的,要改以NumericField來存放。 在搜尋時,因為已經不是只有單純下Search Query而已,而是會包含其它的條件,所以另外設計一個SearchQuery來包裝整個查詢。
卑微研究生 發表在 痞客邦 留言(0) 人氣(109)

一般的ASP.NET網頁,當使用者送出一個Request,後端就會跑整個ASP.NET程式,然後讀資料庫有的沒的,最後再輸出成網頁。 某些情況下,資料並不會一直更動,重覆跑後端的邏輯及讀取資料庫,對效能、能源也是種浪費,這時候就會使用快取的方式,來減低伺服器的負擔。但在下認為,直接輸出HTML而不跑後端程式是最完美的作法,當然這是不太可能的,至少在MVC的架構下,還是得跑一個Controller邏輯。但無論如何,後端程式輸出HTML到檔案,後續就直接讀取該檔案這樣的作法,個人覺得還是值得研究的。 接下來,就示範如何在ASP.NET程式裡,輸出HTML到檔案。開始之前,建議先閱讀下列文章,了解一下ASP.NET的生命週期。 ASP.NET 網頁生命週期概觀 http://msdn.microsoft.com/zh-tw/library/ms178472(v=vs.100).aspx
卑微研究生 發表在 痞客邦 留言(2) 人氣(992)

NoSQL這玩意兒最近算蠻流行的,而且噗浪也有在用,許多大型的網站其實也有漸漸在用NoSQL相關的技術,關於這方面的資訊,可以參考iThome的報導:
NoSQL解決資料庫暴量的新方法 NoSQL相關的選擇其實很多,本篇文章將會針對mongoDB做介紹。
mongoDB下載位址 .NET Driver卑微研究生 發表在 痞客邦 留言(0) 人氣(235)

在傳統的WinForm中,如果程式要顯示訊息視窗,方法是呼叫MessageBox的Show函式。而在Metro App裡,是使用所謂的Toast Notification,也就是即時訊息。它的使用方法比較特別,是用利XML設定要顯示的訊息。底下示範使用方法。
Demo程式的介面,一個TextBlock以及Button,TextBlock用來顯示XML文字。
卑微研究生 發表在 痞客邦 留言(0) 人氣(154)