?

移動應用系統開發

2016-10-17 19:38楊剛胡盼紅古煒
科技視界 2016年21期
關鍵詞:技術設計

楊剛 胡盼紅 古煒

"

【摘 要】隨著移動通信3G技術的普及和4G技術投入應用,移動終端不再僅是通訊網絡的終端,還成為互聯網的終端,移動設備與電腦之間的界限越來越不明顯,以前在臺式機上運行的應用大多可以移植到手機、平板電腦等移動設備上,這樣更有利于快速掌握重要信息,移動應用成為近幾年的應用熱點。

【關鍵詞】移動應用系統;設計;技術

1 系統設計

隨著企業信息化進程的邁進,公司相繼建設了多個生產和辦公系統,在實際應用過程中發揮了巨大的作用,充分體現了信息交流、協同、協作的特點,達到了信息共享、專業信息集成的目的。

1.1 系統目標

1)充分利用中國石油移動辦公的安全機制。

2)建設界面美觀、易于擴展、功能齊全的移動辦公平臺。

3)集成對標系統,能對國際對標和國內對標等經營數據進行展示。

4)集成目前勘探開發系統的重要信息,對領導關心的重要生產數據在移動設備上進行展示。

5)對目前OA系統進行補充,開發會議、印章、請假審批功能,并實現領導在移動設備上的審批。

1.2 設計原則

1)安全性原則。系統安全穩定運行是移動應用生命力的重要保證之一。由于移動應用基于公共通信網絡,所以在數據存儲、數據傳輸中的安全性尤為重要。

2)模塊化原則。各個系統基于移動開發系統平臺實現,采用成熟的網絡、表格、繪圖、工作流等模塊開發,系統架構穩定。

3)可配置原則。移動辦公系統從一開始設計時就充分充分考慮到未來移動應用的需求和使用前景,因此是完全按照產品化、中間件的設計思路實現,最大限度的采用用戶自定義的方式實現。

4)最佳用戶體驗原則。移動辦公系統操作簡單、易用,人機界面友好,能夠實現表格拖動、數據鉆取、固定表頭等便于用戶交互操作的需求。

1.3 總體架構

移動辦公平臺由四部分組成:①數據集成。將現有信息系統中的適合在移動終端上展示的部分遷移到移動應用平臺上。②工作審批。在現有OA系統基礎上加以擴展,包括會議審批、請假審批、印章審批。③移動數據服務端。用于存儲通過數據接口從已有的應用系統中取得的數據,通過數據校驗機制,保證移動端的數據與已有的應用系統中的數據同步。④移動數據客戶端。在基于IOS的移動終端上以圖形、圖表的方式展示數據,并支持數據鉆取。

1.4 功能架構

1.5 數據庫設計

數據庫設計按照現有運行系統的數據標準建立,數據表名、數據項名稱、數據項代碼、數據類型等與原系統保持一致。數據庫軟件采用Oracle10G。

2 關鍵技術

2.1 開發工具

系統開發工具主要采用基于原生(Native)的Xamarin開發框架,Xamarin是目前少數提供原生解決方案的跨平臺開發工具,原生應用程序包含以下特性:①使用標準的用戶界面并符合各個在用平臺的設計準則。配合硬件裝置以提供優化的效能。②Xamarin將原生的 IOS及Android API轉換為C# 函式庫供使用者使用,開發人員可使用C#撰寫程序,并呼叫原生平臺(IOS, Android)的API,且透過良好的設計,可以在不同平臺共享部分程序代碼。③開發人員可透過Xamarin編譯程序,直接將程序編譯為ARM的執行文件,并進行各平臺的封裝。編譯封裝完成的App由于不經過中間轉譯,直接編譯為原生的二進制執行文件,因此具有好的運作效能。作為一個跨平臺開發框架,Xamarin有很多優點。

2.2 關鍵技術

1)動態數據表及字段數據項,可以通過在服務器端配置各個子模塊下顯示的數據表以及各個表中顯示的數據項。

2)工作流技術,可以通過在服務器端配置各個審批流程的節點以及規則等,系統上線后業務人員可以根據需求進行二次開發和調整。

3)安全性控制,通過與IAM以及移動應用平臺的整合,保證了辦公、生產等方面數據的安全。

4)接口數據定時抓取,通過開發相應的Windows服務程序,配置程序在相應的時間抓取相應的接口數據。

5)日志追蹤管理,提供日志功能包括系統登陸日志、數據請求日志、系統錯誤日志。

6)數據加密與壓縮,為了加強產品的安全性,移動辦公系統提供了數據加密功能,在通訊服務器和移動客戶端提供數據傳輸加密、數據接收解密功能。提供數據壓縮功能,減少數據傳送包大小、提高響應速度、減少手機GPRS網絡流量功能、提高運行效率。

目前,系統已經投入運行,并且取得了良好的效果。移動應用的使用,為大家提供了一個新的工作工具,特別是在工作審批方面,大大的加快了流程處理時間,提高了工作效率。

[責任編輯:王偉平]

【摘 要】SQL注入漏洞對網站的安全構成嚴重威脅,然而SQL注入漏洞又具有較高的普遍性。因此查找SQL注入漏洞并了解其入侵方式,及時堵塞網站安全漏洞,是我們網站管理員必須要掌握的。本文以一款SQL注入工具入侵原理入手,講解了其入侵步驟,并給出了防范措施。

【關鍵詞】SQL注入;入侵;漏洞;防范

0 引言

SQL注入攻擊指的是攻擊者通過構建特殊的輸入作為參數傳入Web應用程序(一般通過網頁地址欄或留言板等具有提交功能的欄目輸入),應用程序接收后錯誤的將攻擊者的輸入作為原始SQL查詢語句的一部分執行,導致改變了程序原始的SQL查詢邏輯,額外的執行了攻擊者構造的SQL查詢語句。攻擊者根據程序返回的結果,獲得想得知的某些數據(譬如后臺管理賬戶、密碼),進而執行攻擊者所要的操作,其主要原因是程序沒有細致地過濾用戶輸入的數據,致使信息泄露。

SQL注入攻擊是黑客對網站進行攻擊、滲透的常用手段,其風險性極高,并且因為SQL注入入侵跟普通的WEB頁面訪問沒什么區別,所以防火墻與殺毒軟件對SQL注入是沒辦法防范的。由于程序員的水平及經驗參差不齊,相當大一部分程序員在編寫代碼的時候,沒有對用戶輸入數據的合法性進行判斷,導致存在SQL注入漏洞的網站相當普遍。如何從根本上進行SQL注入防御,降低SQL注入風險具有極其重要的現實意義。

1 啊D注入工具入侵原理

所謂知己知彼,百戰百勝。要想有效防御SQL注入攻擊,就要了解其攻擊原理。本文通過對一款黑客常用注入工具——啊D注入工具工作原理的講解,來分析SQL注入的防范措施。

啊D注入工具的攻擊方法實際上就是逐步測試、逐步猜解,猜解網站數據庫中的后臺管理員表名、字段名、字段值,進而獲取到網站的管理員賬號、密碼,在其它工具獲取網站后臺登錄地址的前提下,登錄網站后臺,獲取網站控制權,甚至整個服務器的管理權限。

有了這個攻擊工具,使得入侵存在SQL注入漏洞的網站成了小兒科的游戲,那些既不懂編程又不懂SQL、年紀小小的青年常常得以在一天之內入侵十多個網站。

2 啊D注入工具攻擊步驟

2.1 啊D注入工具入侵的第一步是尋找注入點

怎樣才算注入點呢?其實就是一類URL,就是網站的一些鏈接,在后面人為的添加一些SQL語句、單引號等之后,這些人為添加的語句可以最終被提交到數據庫執行,并將結果在瀏覽器端顯示出來,這樣的URL就是網站的注入點。黑客通過執行后不同的返回結果,來猜解數據庫的表名、字段名、字段值,進而入侵網站。

那么啊D注入工具是怎么尋找注入點的呢?實際上和手工注入一樣,就是通過在一些網站鏈接地址后輸入一些非法字符串,根據返回的結果判斷網站是否可以進行注入。最常用的就是單引號測試法和1=2測試法。

單引號測試法就是在最后面加上單引號,如果結果返回“microsoft jet database engine 錯誤80040e14”之類的錯誤信息,就表示單引號被連接到SQL語句中執行了,就說明在該鏈接地址后面添加SQL語句可以被提交到數據庫執行,就表示該鏈接地址存在SQL注入漏洞。

1=2測試法就是在網站鏈接地址后輸入1=2,返回的結果如果是:BOF或EOF中有一個是“真”,或者當前的記錄已被刪除,所需的操作要求一個當前的記錄,或者原來正常顯示的網頁沒有顯示出來,就表示1=2被連接到SQL語句中執行了,就說明在該鏈接地址后面添加SQL語句可以被提交到數據庫執行,就表示該鏈接地址存在SQL注入漏洞。

2.2 猜解表名

假如http://localhost/article.aspx?id=124是一個注入點,要用它來猜解表名。怎么提交?

http://localhost/article.aspx?id=124 and exists(select count(*) from admin)

然后看頁面返回了,返回正常就表示該表存在,否則就不存在了。啊D工具就是這樣猜解的,它的軟件數據庫里面有很多提前添加好的表名。然后猜解的時候就是挨個試了。

2.3 猜解字段名

有了表名,下一步就是猜解字段了。需要用到這樣的語句:http://localhost/article.aspx?id=124 and exists(select username from admin)

也就是將count(*)換成了字段名。將設置列表中的字段挨個進去匹配。頁面返回正常就表示字段存在,否則就不存在。

2.4 猜解字段長度

字段有了,下一步就是猜解字段值了,先猜解字段長度。

http://localhost/article.aspx?id=124 and (select top 1 len(username) from admin)>0

http://localhost/article.aspx?id=124 and (select top 1 len(username) from admin)>5

http://localhost/article.aspx?id=124 and (select top 1 len(username) from admin)>6

|直到準確判斷出長度為止。其中的len()函數負責計算username中第一條記錄的長度。

2.5 猜解字段值

知道了長度,下一步就是準確猜解每一位的值。

and(select top 1 asc(mid(username,1,1))from admin)>97

and(select top 1 asc(mid(username,1,1))from admin)>98

猜你喜歡
技術設計
何為設計的守護之道?
瞞天過?!律O計萌到家
設計秀
有種設計叫而專
設計之味
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合