网络安全工程师毕业答辩杂记
目錄
01 數(shù)通技術知識要點... 1
02 滲透測試基礎... 1
03 滲透測試環(huán)境搭建與工具使用... 1
04 信息收集... 1
05 web安全... 2
06 不定性拓展內容... 2
07 應急響應... 2
08 安全基線... 3
09 操作系統(tǒng)要點... 3
01 數(shù)通技術知識要點
主流園區(qū)網絡架構有哪些層次(區(qū)域),每個層次(區(qū)域)的主要功能是什么?
02 滲透測試基礎
1.什么是滲透測試?
2.滲透測試的目的是什么?
3.滲透測試方法分類?
4.滲透測試執(zhí)行流程?
5.滲透測試報告如何撰寫?有比較好的自動化生成工具嗎?
6.滲透測試的對象包含哪些?
7.可以說一下都了解什么應用系統(tǒng)框架嗎?
03 滲透測試環(huán)境搭建與工具使用
04 信息收集
瀏覽網站,看看網站規(guī)模,功能,特點等
端口,弱口令,目錄等掃描,對響應的端口進行漏洞探測,比如 rsync,心臟出血,mysql,ftp,ssh弱口令等。XSS,SQL注入,上傳,命令注入,CSRF,cookie安全檢測,敏感信息,通信數(shù)據傳輸,暴力破解,任意文件上傳,越權訪問,未授權訪問,目錄遍歷,文件 包含,重放攻擊(短信轟炸),服務器漏洞檢測,最后使用漏掃工具等
1) 信息收集:獲取域名的whois信息,獲取注冊者郵箱姓名電話等,丟社工庫里看看有沒有泄露密碼,然后嘗試用泄露的密碼進行登錄后臺。 用郵箱做關鍵詞進行丟進搜索引擎。 利用搜索到的關聯(lián)信息找出其他郵箱進而得到常用社交賬號。 社工找出社交賬號,里面或許會找出管理員設置密碼的習慣 。 利用已有信息生成專用字典。查詢服務器旁站以及子域名站點,因為主站一般比較難,所以先看看旁站有沒有通用性的cms或者其他漏洞。查看服務器操作系統(tǒng)版本,web中間件,看看是否存在已知的漏洞,比如IIAPACHE,NGINX的解析漏洞查看IP,進行IP地址端口掃描,對響應的端口進行漏洞探測,比如 rsync,心臟出血,mysql,ftp,ssh弱口令等。掃描網站目錄結構,看看是否可以遍歷目錄,或者敏感文件泄漏,比如php探針, google hack 進一步探測網站的信息,后臺,敏感文件
? 2) 漏洞掃描:開始檢測漏洞,如XSS,XSRF,sql注入,代碼執(zhí)行,命令執(zhí)行,越權訪問,目錄讀取,任意文件讀取,下載,文件包含,? 遠程命令執(zhí)行,弱口令,上傳,編輯器漏洞,暴力破解等
? 3) 漏洞利用:利用以上的方式拿到webshell,或者其他權限
? 4) 權限提升:提權服務器,比如windows下mysql的udf提權,serv-u提權,windows低版本的漏洞,如iis6,pr,巴西烤肉,linux臟牛漏洞,linux內核版本漏洞提權,linux下的mysql system提權以及oracle低權限提權
? 5) 日志清理
? 6) 總結報告及修復方案
05 web安全
06 不定性拓展內容
?續(xù):
"1.拿到一個待檢測的站,你覺得應該先做什么?",
????收集信息:?whois、網站源IP、旁站、C段網站、服務器系統(tǒng)版本、容器版本、程序版本、數(shù)據庫類型、二級域名、防火墻、維護者信息...
"2.mysql的網站注入,5.0以上和5.0以下有什么區(qū)別?",
?? 5.0以下沒有information_schema這個系統(tǒng)表,無法列表名等,只能暴力跑表名。
"3.在滲透過程中,收集目標站注冊人郵箱對我們有什么價值?",
????丟社工庫里看看有沒有泄露密碼,然后嘗試用泄露的密碼進行登錄后臺。用郵箱做關鍵詞進行丟進搜索引擎。利用搜索到的關聯(lián)信息找出其他郵箱進而得到常用社交賬號。
社工找出社交賬號,里面或許會找出管理員設置密碼的習慣 。利用已有信息生成專用字典。觀察管理員常逛哪些非大眾性網站,拿下它。直接發(fā)送釣魚文件鏈接等
"4.判斷出網站的CMS對滲透有什么意義?",
????查找網上已曝光的程序漏洞。如果開源,還能下載相對應的源碼進行代碼審計。
"5.目前已知哪些版本的容器有解析漏洞,具體舉例。",
?IIS 6.0
????/xx.asp/xx.jpg "xx.asp"是文件夾名
????IIS 7.0/7.5
????默認Fast-CGI開啟,直接在url中圖片地址后面輸入/1.php,會把正常圖片當成php解析
????Nginx
????版本小于等于0.8.37,利用方法和IIS 7.0/7.5一樣,Fast-CGI關閉情況下也可利用。
????空字節(jié)代碼 xxx.jpg.php
????Apache
????上傳的文件命名為:test.php.x1.x2.x3,Apache是從右往左判斷后綴
"6.目標站發(fā)現(xiàn)某txt的下載地址為\
http://www.test.com/down/down.php?file=/upwdown/1.txt,\
你有什么思路?",
????這就是傳說中的下載漏洞!在file=后面嘗試輸入index.php下載他的首頁文件,然后在首頁文件里繼續(xù)查找其他網站的配置文件,可以找出網站的數(shù)據庫密碼和數(shù)據庫的地址。
"7.發(fā)現(xiàn) demo.jsp?uid=110 注入點,你有哪幾種思路獲取 webshell,哪種是優(yōu)選?",
有寫入權限的,構造聯(lián)合查詢語句使用using INTO OUTFILE,可以將查詢的輸出重定向到系統(tǒng)的文件中,
這樣去寫入 WebShell 使用 sqlmap –os-shell 原理和上面一種相同,來直接獲得一個 Shell,
這樣效率更高 通過構造聯(lián)合查詢語句得到網站管理員的賬戶和密碼,然后掃后臺登錄后臺,再在后臺通過改包上傳等方法上傳 Shell
"8.如何利用Google Hacking快速查找URL中含有/admin/login.php的網站,\
并列舉其他常用的Google Hacking高級操作參數(shù)。",
cache:url查看指定URL快照
"9.例如www.baidu.com 存在DNS域傳送漏洞,\
寫出利用方法(Windows和Linux任意一種即可)",
dig @存在域傳送漏洞服務器ip地址 axfr 查詢內容【域名,不要帶www】
nslookup
set type=ns
ls -d url >url.txt
區(qū)域傳送是DNS常用的功能,區(qū)域傳送的漏洞也不是沒有辦法解決的,嚴格限制允許區(qū)域傳送的主機即可
"10.sql注入分為哪幾種?這幾種在注入的時候有什么分別?",
字符型,數(shù)字型,搜索型,注入方法為聯(lián)合查詢注入,報錯注入,布爾盲注,時間盲注,對查詢
"11.XSS分為幾種?簡單描述cookie和session",
dom型,反射型,存儲型
cookies文件的內容大致上包括了諸如用戶名、密碼、設置等信息。保存在客戶端
session中主要保存用戶的登錄信息、操作信息等等。此 session將在用戶訪問結束后自動消失
存儲數(shù)據的大小不同,一個 cookie存儲的數(shù)據不超過3 K; session存儲在服務器上可以任意存儲數(shù)據,但是,當 session存儲數(shù)據太多時,服務器可選擇進行清理。
"12.請列舉常見的可以對網站進行自動化的web掃描工具",
awvs web站點掃描
Nikto這是一個開源的Web服務器掃描程序,它可以對Web服務器的多種項目(包括3500個潛在的危險文件/CGI,以及超過900個服務器版本,還有250多個服務器上的版本特定問題)進行全面的測試。
其掃描項目和插件經常更新并且可以自動更新(如果需要的話)。
Nikto可以在盡可能短的周期內測試你的Web服務器,這在其日志文件中相當明顯。不過,如果你想試驗一下(或者測試你的IDS系統(tǒng)),它也可以支持LibWhisker的反IDS方法。
"13.甲方重要網站被黑客上傳了WEBSHELL并截圖證明,\
身為乙方安全工程師的你負責處理此事,\
請思考,你需要做些什么?如果需要應急,請從Windows和Linux兩個\
服務器方面入手,分別寫出你的應急思路",
Windows 檢查系統(tǒng)賬號安全 檢查異常端口、進程 檢查啟動項、計劃任務、服務 日志分析
Linux? 賬號安全 歷史命令 檢查異常端口 檢查異常進程? 檢查開機啟動項 檢查定時任務 檢查服務 檢查異常文件 檢查系統(tǒng)日志
"14.你常用的滲透工具有哪些,最常用的是哪個?",
bp nmap cs metasploit? bp
"15.windows 權限控制,種后門有哪幾種方式?",
服務,啟動目錄,注冊表,計劃任務,鏡像劫持,shift
"16.php文件包含有哪些函數(shù)? ",
include? include_once require? require_once
"17.php命令執(zhí)行有哪些函數(shù)?",
system、exec、popen 、passthru、shell_exec eval() assert() preg_replace() call_user_func() $a($b)
"18.mysql的網站注入,5.0以上和5.0以下有什么區(qū)別?",
5.0以下不存在Information_schema,數(shù)據庫表,字段需要盲猜
"19.mysql注入點,對目標站直接寫入一句話\
需要具備哪些條件?\
讀文件函數(shù)是什么?寫shell函數(shù)是什么?",
1、首先判斷當前用戶是否具備file權限,其次需要判斷是否web和數(shù)據庫分離,未分離情況可尋找網站報錯或者phpinfo信息得到絕對路徑寫shell。
2、load_file() into outfile? dumpfile
eval
"20.phpmyadmin 如何滲透?",
Phpmyadmin可嘗試爆破,老版本直接輸入用戶名不輸入密碼登錄,低權限可讀文件,獲取web配置繼續(xù)以root身份getshell。
高權限可以利用文件包含,或者直接out file寫shell。
還可以利用日志文件getshell。
"21.sqlmap查詢當前數(shù)據庫參數(shù)是啥?",
--current
"22.如何判斷web服務器是linux還是windows?",
TTL值判斷。
文件大小寫,但是不準確有些windows下web服務器自身區(qū)分大小寫。
http請求返回頭。
Web報錯或者404頁面分析判斷。
"23.CSRF、XSS 、XXE、Ssrf 分別是什么?以及修復方式?",
Csrf 跨站請求偽造? 增加token 增加Referer 新增 HTTP Header
XSS 跨站腳本攻擊,一般可獲取cookie,掛馬釣魚等操作。 對用戶的輸入(和URL參數(shù))進行過濾,對輸出進行html編碼
XXE? xml實體注入,讀取文件等,特殊情況下可直接獲取權限。 過濾用戶提交的XML數(shù)據 使用開發(fā)語言提供的禁用外部實體的方法
SSRF? 服務器端請求偽造,通常在web加載資源圖片地方容易產生,可探測內網,如果有redis可以嘗試getshell????
??? 過濾格式為ip的鏈接
??? 設置url白名單或限制內網IP
??? 響應處理,任何情況都不建議直接返回服務器響應內容給客戶端。
??? 禁用不必要的URL協(xié)議(HTTP之外的,不必要的)
??? 內網認證授權
"24.常見的不同web服務器解析漏洞? IIS apache nginx 等怎么利用",
IIS 5 6 /a.asp/a.jpg a.asp;x.jpg 對于IIS服務器5版本和6版本存在兩個解析漏洞,分別為目錄解析和文件解析
目錄解析
簡介:在網站下建立文件夾的名稱中以.asp或.asa等作為后綴的文件夾,其目錄內任何擴展名的文件都被IIS當作asp可執(zhí)行文件去解析并執(zhí)行.
文件解析/后綴解析
簡介:在IIS6.0下,分號后面的內容不被解析,舉個栗子,xx.asp;.jpg將會當作xx.asp去解析執(zhí)行.
IIS7 fast-cgi模式 a.jpg/x.php
IIS7/7.5在Fast-CGI運行模式下,在一個文件路徑(/xx.jpg)后面加上/xx.php會將/xx.jpg/xx.php 解析為 php 文件。
該解析漏洞利用需兩個條件:
1.??????? php.ini里cgi.fix_pathinfo=1(默認為1)? 2.在”Handler Mapping”中取消勾選以下內容:php-5.3.8>Request Restrictions>Invoke handler only if request is mapped to:
Apache aaa.php.jpg
配置如下:
AddHandler application/x-httpd-php .php
或者
<FilesMatch ".+\.ph(ar|p|tml)">
??? SetHandler application/x-httpd-php
</FilesMatch>
Nginx? a.jpg/x.php?
當訪問路徑為test.png/noexist.php時。
fastcgi在處理’.php’文件時發(fā)現(xiàn)文件并不存在,這時php.ini配置文件中cgi.fix_pathinfo=1 發(fā)揮作用,這項配置用于修復路徑,如果當前路徑不存在則采用上層路徑。
為此這里交由fastcgi處理的文件就變成了’/test.png’。 上傳圖片馬,然后訪問時加上php后綴 就成功解析成php文件
"25.linux 和windows應急分別從哪些方面下手?",
Windows 檢查系統(tǒng)賬號安全 檢查異常端口、進程 檢查啟動項、計劃任務、服務 日志分析
Linux? 賬號安全 歷史命令 檢查異常端口 檢查異常進程? 檢查開機啟動項 檢查定時任務 檢查服務 檢查異常文件 檢查系統(tǒng)日志
"26.http返回頭里面有哪些項?能說出來幾個 分別什么作用?",
Content-Type:text/html;charset=UTF-8 告訴客戶端,資源文件的類型,還有字符編碼,客戶端通過utf-8對資源進行解碼,然后對資源進行html解析。
Content-Encoding:gzip 告訴客戶端,服務端發(fā)送的資源是采用gzip編碼的,客戶端看到這個信息后,應該采用gzip對資源進行解碼。
Date: Tue, 03 Apr 2018 03:52:28 GMT 這個是服務端發(fā)送資源時的服務器時間,GMT是格林尼治所在地的標準時間。
Server:Tengine/1.4.6 這個是服務器和相對應的版本,只是告訴客戶端服務器信息。
Transfer-Encoding:chunked 這個響應頭告訴客戶端,服務器發(fā)送的資源的方式是分塊發(fā)送的。
Last-Modified: Dec, 26 Dec 2015 17:30:00 GMT 所請求的對象的最后修改日期(按照 RFC 7231 中定義的“超文本傳輸協(xié)議日期”格式來表示)
Connection:keep-alive 這個字段作為回應客戶端的Connection:keep-alive,告訴客戶端服務器的tcp連接也是一個長連接,客戶端可以繼續(xù)使用這個tcp連接發(fā)送http請求。
ETag: “737060cd8c284d8af7ad3082f209582d” 就是一個對象(比如URL)的標志值,就一個對象而言,比如一個html文件,如果被修改了,其Etag也會別修改,所以,ETag的作用跟Last-Modified的作用差不多,主要供WEB服務器判斷一個對象是否改變了
"27.redis 未授權在滲透中如何利用?",
尋找web目錄,嘗試寫shell。Linux嘗試寫啟動項,加sshkey遠程登錄。
"28.滲透測試執(zhí)行流程?",
前期交互階段:確定滲透的范圍、目標、限制條件以及服務合同細節(jié)。
信息收集階段:信息收集是滲透攻擊的前提,可以有針對性地制定模擬攻擊測試計劃,提高模擬攻擊的成功率
威協(xié)建模階段:使用獲取到的信息,來標識出目標系統(tǒng)上可能存在的安全漏洞與弱點
漏洞分析階段:從獲取的信息中分析和理解那些攻擊途徑會是可行的
滲透攻擊階段:針對目標系統(tǒng)實施深入研究和測試的滲透攻擊
后滲透攻擊階段:尋找客戶組織最具價值和嘗試進行安全保護的信息和資產
報告階段:使用報告文檔來表明在滲透測試過程中做了那些
"29.簡單介紹一下nmap工具及使用?",
網絡發(fā)現(xiàn)和安全審計工具
主機發(fā)現(xiàn)
端口掃描
應用程序和版本探測
操作系統(tǒng)探測
-p 指定端口掃描
-sT tcp掃描
-sP ping掃描
-Pn 不進行ping掃描
"30.nmap在掃描過程中如何規(guī)避安全設備?",
-T限制掃描速度
-Pn不進行ping掃描
--spoof-mac源mac欺騙
--source-port 源地址欺扁
-D使用誘餌進行源地址欺騙
-sl 空閑掃描
-f 報文分段
--mtu 指定偏移量大小(必須是8的倍數(shù))
--data-length 指定發(fā)包長度
"31.簡單介紹一下metasploit工具?",
是一個漏洞利用工具?? Metasploit是一款開源的安全漏洞檢測工具,可以幫助安全和IT專業(yè)人士識別安全性問題,驗證漏洞的緩解措施,并管理專家驅動的安全性進行評估,提供真正的安全風險情報。
"32.metasploit中有哪些模塊?",
滲透攻擊/漏洞利用模塊:利用發(fā)現(xiàn)的安全漏洞或配置弱點對遠程目標進行攻擊
攻擊載荷模塊:目標系統(tǒng)在被滲透攻擊之后在目標系統(tǒng)上運行任意命令或者執(zhí)行特定代碼。
輔助模塊:負責執(zhí)行掃描、嗅探、指紋識別等相關功能以輔助滲透測試
空指令模塊:是一些對程序運行狀態(tài)不會造成任何實質性影響的空操作或無關操作指令
編譯器模塊:對攻擊載荷進行各種不同形式的編碼
后滲透攻擊模塊:主要用于在滲透攻擊取得目標系統(tǒng)遠程控制權之后,在受控系統(tǒng)中進行各式各樣的后滲透攻擊動作
規(guī)避模塊:主要用于規(guī)避Windows Defender防火墻、Windows應用程序控制策略(applocker)等的檢查。
"33.cs有接觸過嗎?介紹一下cs的功能吧?",
滲透測試軟件,分為客戶端與服務端,可以進行團隊分布式操作
功能
端口轉發(fā).
掃描多模式端口Listener
Windows exe程序生成
Windows dll動態(tài)鏈接庫生成
java程序生成
office宏代碼生成
"34.什么是Xray?有什么功能?如何使用?",
web安全評估工具
功能:xray支持主動、被動多種掃描方式,可以靈活定義Poc
如何使用:可以與burpsuite聯(lián)動進行對網頁的漏洞掃描
"35.介紹一下burpsuite工具及其常用模塊有哪些?",
是由多個不同的小工具(功能模塊)組成的集合,工具與工具之間可以聯(lián)動
Target:顯示目標目錄結構的-個功能
Proxy:攔截HTTP HTTPs的代理服務器,作為一個在瀏覽器和目標應用程序之間的中間人,允許攔截、查看修改在兩個方向上的原始數(shù)據流(攔截代理模塊)
Intruder: -一個定制的高度可配置的工具,對Web應用程序進行自動化攻擊,如:枚舉標識符、收集有用的數(shù)據以及使用fuzzing技術探測常規(guī)漏洞(攻擊模塊)
Repeater: -個靠手動操作來觸發(fā)單獨的HTTP請求,并分析應用程序響應的工具(重放)
Sequencer:用來分析那些不可預知的應用程序會話令牌和重要數(shù)據項的隨機性的工具Decoder:進行手動執(zhí)行或對應用程序數(shù)據者智能解碼編碼的工具(編碼模塊)
Comparer:通常是通過一些相關的請求和響應得到兩項數(shù)據的—-個可視化的"差異"(對比模塊)
"36.Webshell管理工具有哪些?有什么不同之處?",
蟻劍:shell不再進行免殺,觸發(fā)流量有特定的規(guī)則庫,在菜刀的基礎上做了界面優(yōu)化
冰蝎:要使用jdk環(huán)境,功能更加完善,流量加密,難以被檢測
哥斯拉? 哥斯拉全部類型的shell均過市面所有靜態(tài)查殺
哥斯拉流量加密能過市面全部流量waf
菜刀
"37.什么是OWASP TOP 10?OWASP top10都有哪些漏洞?",
在?開放Web應用基金會致力于創(chuàng)造一個更安全的網絡應用環(huán)境。它免費提供文章、工具、技術和論壇,讓每個開發(fā)人員都能創(chuàng)建安全的代碼
OWASP Top 10包括:注入、失效身份驗證和會話管理、敏感信息泄露、XML外部實體注入攻擊(XXE)、存取控制中斷、安全性錯誤配置、跨站腳本攻擊(XSS)、不安全的反序列化、使用具有已知漏洞的組件、日志記錄和監(jiān)控不足。
"38.數(shù)據庫類型?常見的端口?什么是SQL注入? \
SQL注入的類型有哪些?\
關系型和非關系型
關系型 1、MySql數(shù)據庫,默認揣口是:3306;
????? 2、Oracle數(shù)據庫,默認端口號為:1521;
????? 3、Sql Server數(shù)據庫,默認端口號為:1433;
非關系型
???????? 2.Memcache d數(shù)據庫,默認端口號:11211 ;
???????? 3.M ongoDB數(shù)據庫,默認端口號:27017;
攻擊者利用Web應用程序對用戶輸入驗證上的疏忽,在輸入的數(shù)據中包含對某些數(shù)據庫系統(tǒng)有特殊意義的符號或命令,讓攻擊者有機會直接對后臺數(shù)據庫系統(tǒng)下達指令,進而實現(xiàn)對后臺數(shù)據庫乃至整個應用系統(tǒng)的入侵。
SQL注入的類型有哪些?\
數(shù)字型
字符型
搜索型
SQL注入自動化注入工具有哪些?SQLmap常用的參數(shù)?\
如何繞過WAF?\
sqlmap
-u? 直接輸入目標url
-r? 從文本文件中獲取http請求
如何繞過WAF?\
1大小寫繞過
2編碼繞過
3利用注釋符
4重寫繞過
5二階注入
6寬字節(jié)注入
什么是堆疊注入?mysql提權方式有哪些?\
??Stacked injections(堆疊注入)從名詞的含義就可以看到應該是一堆?sql?語句(多條)一起執(zhí)行。而在真實的運用中也是這樣的,?我們知道在 mysql 中, 主要是命令行中,?每一條語句結尾加; 表示語句結束。這樣我們就想到了是不是可以多句一起使用。這個叫做?stacked? injection。
udf提權
反彈shell提權
mysql提權之后可以執(zhí)行命令嗎?\
可以
如何突破注入時字符被轉義?SQL注入如何防御?",
利用寬字節(jié)注入
適用于數(shù)據庫使用雙字節(jié)編碼方式(如GBK)WAF利用AddSlashes()等函數(shù)對敏感字符進行轉義的場景
1分級管理
2參數(shù)傳值
3使用安全參數(shù)
4漏洞掃描
5多層驗證
6數(shù)據庫信息加密
"39.什么是XSS?XSS類型有哪些?XSS漏洞有哪些危害?\
XSS漏洞如何防御?",
xss跨站腳本攻擊?
攻擊者往web頁面或url里插入惡意JavaScript腳本代碼且應用程序對用戶輸入的內容沒有過濾,那么當正常用戶瀏覽該頁面時,嵌入在web頁面的惡意JavaScript腳本代碼會被執(zhí)行,從而達到惡意攻擊正常用戶的目的。
反射性xss:它是非持久型,參數(shù)型的跨站腳本。
存儲型xss:它是將腳本代碼寫進數(shù)據庫可以永久保存數(shù)據,危害最大
DOM型xss:與反射性相似,但是DOM是樹形結構,利用DOM標簽
獲取用戶cookie、鍵盤記錄、xss gets hell、刷流量,執(zhí)行彈窗廣告、傳播蠕蟲病毒。
使用htmlspecialchars函數(shù)進行實體編碼
使用http only對cookie進行限制
對用戶輸入的內容進行過濾
"40.文件上傳都有哪些繞過方式?文件上傳漏洞應該如何防御?\
.htacees文件有什么作用?\
拿到一個webshell發(fā)現(xiàn)網站根目錄下有.htaccess文件,\
我們能做什么?",
繞過方式
1前端js繞過
2黑白名單繞過
3針對文件類型繞過
4路徑截斷繞過與普通截斷繞過
5win系統(tǒng)解析漏洞繞過
如何防御
1文件上傳的目錄設置為不可執(zhí)行
2判斷文件類型
3使用隨機數(shù)改寫文件名和文件路徑
4單獨設置文件服務器的域名
5使用安全設備
作用
1URL重寫、自定義錯誤頁面
2MIME類型配置
3訪問權限控制等
4主要體現(xiàn)在偽靜態(tài)的應用
5自定義404錯誤頁面
6禁止訪問指定文件類型
7圖片防盜鏈
8文件密碼保護
9阻止/允許特定IP/IP段
10目錄瀏覽與主頁
11將內容符合php語法規(guī)則的文件當作PHP文件解析
12匹配文件名中的關鍵字
13匹配文件名
拿到htaccess文件可以做什么
插入<FilesMatch "xxx.jpg"> SetHandler application/x-httpd-php .jpg文件會被解析成.php文件
"41.什么是文件包含?文件包含分類?\
在php當中包含的函數(shù)有哪些?\
php偽協(xié)議有哪些?如何利用?文件包含漏洞如何防御?",
把可重復使用的函數(shù)寫入到單文件中,在使用該函數(shù)時,直接調用此文件,無需再次編寫函數(shù),這一調用文件的過程被稱為包含。
本地文件包含
遠程文件包含
在php當中包含的函數(shù)有哪些?\
Include
Include_ once
Require
Require_once
php偽協(xié)議有
php://input?? 可以獲取POST的數(shù)據流
php://filter?? 可以獲取指定文件的源碼
zip://??? 可以訪問壓縮包里的文件
phar://?? 和zip://類似絕對路徑和相對路徑都可以
data://?? 同樣類似于php://input
"42.什么是命令執(zhí)行?命令執(zhí)行的分類?\
導致遠程代碼執(zhí)行、系統(tǒng)命令執(zhí)行的函數(shù)有哪些?\
命令執(zhí)行漏洞如何防御?",
命令執(zhí)行漏洞是指攻擊者可以隨意執(zhí)行系統(tǒng)命令,分為遠程代碼執(zhí)行,系統(tǒng)命令執(zhí)行兩類
遠程代碼執(zhí)行? 函數(shù): evval() assert()preg_replace() cal user_func() $a($b)
系統(tǒng)命令執(zhí)行? 函數(shù): system() exe c()shell_exec()passthru() popen()反引號
命令執(zhí)行漏洞如何防御?",
1禁用部分系統(tǒng)函數(shù)
2嚴格過濾關鍵字符
3嚴格限制允許的參數(shù)類型
4使用escapeshellarg函數(shù)來處理命令函數(shù)
5使用safe_mode_exec_dir指定可執(zhí)行文件的路徑(php.ini)
"43.什么是dos、ddos攻擊?如何防御?",
DDoS攻擊就是分布式拒絕服務攻擊,指借助于客戶/服務器技術,將多個計算機聯(lián)合起來作為攻擊平臺,對一個或多個目標發(fā)動DDoS攻擊,可使目標服務器進入癱瘓狀態(tài)。
DoS,拒絕服務(Denial of Service)指的是通過各種手段,最終導致目標系統(tǒng)崩潰、失去響應,從而無法正常提供資源或服務的情況。
"44.抓包工具用過哪些?如何使用?",
WireShark
使用步驟:
1.點擊菜單“Capture” -> “Options...” 便會打開抓取配置界面
2.在“Capture”里,選擇與外網連接的網卡,不知道選擇哪一個,可以點擊全部選擇
3.在“Capture Filter”中寫入過濾條件。這里是用來篩選所抓取報文的。對于AS2端口來說,錄入“Port 8080”就是“僅僅抓取端口是8080”的所有通信報文,也可以根據真實使用的端口來選擇
4.然后,點擊“Start”按鈕就可以了。接下來,WireShark會在主界面顯示出已經抓取的通訊報文。如果沒有任何數(shù)據,請檢查你的配置是否正確
5.在抓取到數(shù)據之后,可以使用菜單“Capture” -> “Stop”來停止抓取,然后使用“File” -> “Save”將抓取到的內容保存在磁盤上,保存之后的文件擴展名一般為“pcapng”文件。這個文件就可以用來分析底層的網絡通訊問題。
"45.文件權限修改用什么命令?格式是怎么樣的?",
chmod
字母法:chmod? (u g o a)?? (+ - =)?? (r w x)?? (文件名)
數(shù)字法:chmod? 777?? 文件名
第一個數(shù)字7:代表用戶 u 的權限 rwx, 4 (r) + 2 (w) + 1 (x) =? 7
第二個數(shù)字7:代表用戶 g 的權限 rwx,??? 4 (r) + 2 (w) + 1 (x) =? 7
第三個數(shù)字7:代表用戶 o 的權限 rwx,??? 4 (r) + 2 (w) + 1 (x) =? 7
[u g o a]?? 含義
u?????? user 表示該文件的所有者
g?????? group 表示與該文件的所有者屬于同一組( group )者,即用戶組
o?????? other 表示其它用戶組
a?????? all 表示這三者皆是
46.復制文件用哪個命令,如果需要連同文件夾一塊復制呢?",
cp
cp -r
{
cp doc1/a.c doc2 表示將doc1下的a.d文件復制到doc2目錄下;
cp -r doc1 doc2 表示將doc1及其doc1下所包含的文件復制到doc2下;
cp -r doc1/. doc2 表示將doc1下的文件復制到doc2,不包括doc1目錄;
說明:cp參數(shù) -i:詢問,如果目標文件已經存在,則會詢問是否覆蓋;
}
"47.終止進程用什么命令? 帶什么參數(shù)?",
kill 命令的基本語法格式如下:
[root@bogon ~]# kill [信號或參數(shù)] PID
注意,kill 命令是按照 PID 來確定進程的,所以 kill 命令只能識別 PID,而不能識別進程名。在使用 kill 命令終止一個進程之前,必須知道該進程的 PID,可以通過在一個命令行上輸入多個 PIDs 的方法,一次終止多個進程。
參數(shù):
-l:信號,如果不加信號的編號參數(shù),則使用“-l”參數(shù)會列出全部的信號名稱
-a:當處理當前進程時,不限制命令名和進程號的對應關系
-p:指定 kill 命令只打印相關進程的進程號,而不發(fā)送任何信號
-s:指定發(fā)送信號
-u:指定用戶
"48.移動文件用哪個命令?改名用哪個命令?",
mv [選項] 源文件或目錄 目標文件或目錄
. mv命令選項
-b :若需覆蓋文件,則覆蓋前先行備份。
-f :force 強制的意思,如果目標文件已經存在,不提示直接覆蓋;
-i :若目標文件 (destination) 已經存在時,就會詢問是否覆蓋!
-u :若目標文件已經存在,且 source 比較新,才會更新(update)
-t : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目標目錄,該選項適用于移動多個源文件到一個目錄的情況,此時目標目錄在前,源文件在后。
改名:mv 原名字 修改的名字(修改目錄名字同理)
把123.txt重命名為456.txt
[root@zcwyou zcwyou]# mv 123.txt 456.txt
"49.Windows入侵排查思路?",
一.檢查系統(tǒng)賬號安全
1.查看服務器是否有弱口令,遠程管理端口是否對公網開放(使用netstat -ano命令、或者問服務器管理員)
2.lusrmgr.msc命令查看服務器是否存在可疑賬號、新增賬號,如有管理員群組的(Administrators)里的新增賬戶,如有,請立即禁用或刪除掉
3.用 D 盾或者注冊表中查看服務器是否存在隱藏賬號、克隆賬號
4.結合日志,查看管理員登錄時間、用戶名是否存在異常
檢查方法:Win+R 打開運行,輸入“eventvwr.msc”,回車運行,打開“事件查看器”,導出 Windows 日志–安全,利用 Log Parser 進行分析
二.檢查異常端口、進程
1.netstat -ano檢查端口連接情況,是否有遠程連接、可疑連接
2.任務管理器-進程
3.檢查啟動項、計劃任務、服務
4.檢查系統(tǒng)相關信息
查看系統(tǒng)版本以及補丁信息
查找可疑目錄及文件
5.日志分析
50.Linux入侵排查思路?
一.賬號安全
who???? 查看當前登錄用戶(tty本地登陸 pts遠程登錄)
w ????? 查看系統(tǒng)信息,想知道某一時刻用戶的行為
uptime? 查看登陸多久、多少用戶,負載
1、用戶信息文件/etc/passwd
root:x:0:0:root:/root:/bin/bash
account:password:UID:GID:GECOS:directory:shell
用戶名:密碼:用戶ID:組ID:用戶說明:家目錄:登陸之后shell
注意:無密碼只允許本機登陸,遠程不允許登陸
2、影子文件/etc/shadow
root:$6$oGs1PqhL2p3ZetrE$X7o7bzoouHQVSEmSgsYN5UD4.kMHx6qgbTqwNVC5oOAouXvcjQSt.Ft7ql1WpkopY0UV9ajBwUt1DpYxTCVvI/:16809:0:99999:7:::
用戶名:加密密碼:密碼最后一次修改日期:兩次密碼的修改時間間隔:密碼有效期:密碼修改到期到的警告天數(shù):密碼過期之后的寬限天數(shù):賬號失效時間:保留
/etc/passwd 存儲一般的用戶信息,任何人都可以訪問;/etc/shadow 存儲用戶的密碼信息,只有 root 用戶可以訪問
二.歷史命令
通過 .bash_history 查看帳號執(zhí)行過的系統(tǒng)命令
1、root的歷史命令 histroy
2、打開 /home 各帳號目錄下的 .bash_history,查看普通帳號歷史命令
歷史操作命令的清除:history -c
但此命令并不會清除保存在文件中的記錄,因此需要手動刪除.bash_profile文件中的記錄
三.檢查異常端口
netstat -antlp|more
查看下pid所對應的進程文件路徑,
運行l(wèi)s -l /proc/$PID/exe或file /proc/$PID/exe($PID 為對應的pid 號)
四.檢查異常進程
ps aux | grep pid
- 檢查開機啟動項
- 開機啟動配置文件
/etc/rc.local
/etc/rc.d/rc[0~6].d
六.檢查定時任務
crontab -l 列出某個用戶cron服務的詳細內容
Tips:默認編寫的crontab文件會保存在 (/var/spool/cron/用戶名 例如: /var/spool/cron/root
crontab -r 刪除每個用戶cront任務(謹慎:刪除所有的計劃任務)
crontab -e 使用編輯器編輯當前的crontab文件
如:*/1 * * * * echo "hello world" >> /tmp/test.txt 每分鐘寫入文件
2、利用anacron實現(xiàn)異步定時任務調度
重點關注
/var/spool/cron/*
/etc/crontab
/etc/cron.d/*
/etc/cron.daily/*
/etc/cron.hourly/*
/etc/cron.monthly/*
/etc/cron.weekly/
/etc/anacrontab
/var/spool/anacron/*
七.檢查服務
chkconfig --list 命令,可以查看系統(tǒng)運行的服務
八.檢查異常文件
九.檢查系統(tǒng)日志
Linux的登錄日志查看文件
日志默認存放位置:/var/log/
查看可登錄的賬戶 cat/etc/passwd|grep ‘/bin/bash’
查看所有用戶最后的登錄信息 lastlog
查看用戶最近登錄信息 last 其中,/var/log/wtmp 存儲登錄成功的信息、btmp 存儲登錄失敗的信息、utmp 存儲當前正在登錄的信息
查看當前用戶登錄系統(tǒng)情況 who
"51.介紹一下Linux安全加固?",
2.更改 SSH 默認端口
3.禁止 root 用戶遠程ssh 登錄
4.限制用戶使用su命令切換 root
5.密碼復雜度策略
6.檢查密碼重復使用次數(shù)限制
7.檢查是否存在空口令賬號
8.禁止同時按下ctrl+alt+del重啟
9.禁用telnet服務
"52.介紹一下windows安全加固?",
1.保持 Windows 升級
2.使用 IIS 防范工具
3.移除缺省的 Web 站點
4.如果你并不需要 FTP 和 SMTP 服務,請卸載它們
5.有規(guī)則地檢查你的管理員組和服務:
6.嚴格控制服務器的寫訪問權限
7.設置復雜的密碼
8.減少/排除 Web 服務器上的共享
9.禁用 TCP/IP 協(xié)議中的 NetBIOS
10.使用 TCP 端口阻塞
11.仔細檢查 .bat 和 .exe 文件:每周搜索一次 .bat
12.管理 IIS 目錄安全
13.使用 NTFS 安全
14.管理用戶賬戶
15.審計你的 Web 服務器
"53.接觸過哪些安全設備?分別介紹一下功能?",
1、防火墻
防火墻技術的功能主要在于及時發(fā)現(xiàn)并處理計算機網絡運行時可能存在的安全風險、數(shù)據傳輸?shù)葐栴},其中處理措施包括隔離與保護。
同時可對計算機網絡安全當中的各項操作實施記錄與檢測,以確保計算機網絡運行的安全性,保障用戶資料與信息的完整性,為用戶提供更好、更安全的計算機網絡使用體驗。
2、防毒墻
相對于防火墻來說,一般都具有防火墻的功能,防御的對象更具有針對性,那就是病毒。
功能同防火墻,并增加病毒特征庫,對數(shù)據進行與病毒特征庫進行比對,進行查殺病毒。
部署方式同防火墻,大多數(shù)時候使用透明模式部署在防火墻或路由器后或部署在服務器之前,進行病毒防范與查殺。
3、入侵防御(IPS)
相對于防火墻來說,一般都具有防火墻的功能,防御的對象更具有針對性,那就是攻擊。
防火墻是通過對五元組進行控制,達到包過濾的效果,而入侵防御IPS,則是將數(shù)據包進行檢測(深度包檢測DPI)對蠕蟲、病毒、木馬、拒絕服務等攻擊進行查殺。
功能同防火墻,并增加IPS特征庫,對攻擊行為進行防御。
4、統(tǒng)一威脅安全網關(UTM)
字面意思就是把威脅都統(tǒng)一了,其實就是把上面三個設備整合到一起了。功能同時具備防火墻、防毒墻、入侵防護三個設備的功能。
5、安全隔離網閘
安全隔離網閘是一種由帶有多種控制功能專用硬件在電路上切斷網絡之間的鏈路層連接,并能夠在網絡間進行安全適度的應用數(shù)據交換的網絡安全設備
"54.如何排除設備誤報?",
修改報警規(guī)則,從源頭上減少誤報
"55.拿shell了如何處理?",
Window
盡一切可能搜集該主機的信息,該主機上各種服務的用戶名和密碼。為接下來的內網滲透弱口令爆破做準備。
Linux
第一步,我們要做的就是讓我們接下來操作的所有命令不在主機上留下任何痕跡。我們可以執(zhí)行下面的命令,這樣我們接下來執(zhí)行的所有命令都不會在 .bash_history中看到了。這條命令只對當前終端有效!
export HISTFILE=/dev/null export HISTSIZE=0先查看當前用戶身份,是否是root權限身份,如果不是的話,查看系統(tǒng)版本,是否可以利用已知漏洞提權的,比如 CVE-2016-5195?。?Linux下用SUID提權
然后要做的自然就是維持權限了,傳送門——>??Linux獲取權限
whoami?????? #查看當前用戶身份
uname -a???? #查看系統(tǒng)信息
history????? #查看命令歷史,有可能可以查看到管理員的一些重要命令,包括密碼等
last???????? #查看登錄歷史
cat /etc/passwd? #查看用戶
cat /etc/shadow? #查看密碼
"56.如何溯源攻擊?",
1、攻擊源捕獲
安全設備報警,如掃描IP、威脅阻斷、病毒木馬、入侵事件等
? 日志與流量分析,異常的通訊流量、攻擊源與攻擊目標等
? 服務器資源異常,異常的文件、賬號、進程、端口,啟動項、計劃任務和服務等
? 郵件釣魚,獲取惡意文件樣本、釣魚網站URL等
? 蜜罐系統(tǒng),獲取攻擊者行為、意圖的相關信息
2、溯源反制手段
IP定位技術
根據IP定位物理地址—代理IP
? 溯源案例:通過IP端口掃描,反向滲透服務器進行分析,最終定位到攻擊者相關信息
ID追蹤術
? ID追蹤術,搜索引擎、社交平臺、技術論壇、社工庫匹配
? 溯源案例:利用ID從技術論壇追溯郵箱,繼續(xù)通過郵箱反追蹤真實姓名,通過姓名找到相關簡歷信息
網站url
域名Whois查詢—注冊人姓名、地址、電話和郵箱。—域名隱私保護
? 溯源案例:通過攻擊IP歷史解析記錄/域名,對域名注冊信息進行溯源分析
?惡意樣本
? 提取樣本特征、用戶名、ID、郵箱、C2服務器等信息—同源分析
? 溯源案例:樣本分析過程中,發(fā)現(xiàn)攻擊者的個人ID和QQ,成功定位到攻擊者。
?社交賬號
基于JSONP跨域,獲取攻擊者的主機信息、瀏覽器信息、真實 IP及社交信息等
? 利用條件:可以找到相關社交網站的jsonp接口泄露敏感信息,相關網站登錄未注銷
3、攻擊者畫像
攻擊路徑
攻擊目的:拿到權限、竊取數(shù)據、獲取利益、DDOS等
?網絡代理:代理IP、跳板機、C2服務器等
?攻擊手法:魚叉式郵件釣魚、Web滲透、水坑攻擊、近源滲透、社會工程等
?攻擊者身份畫像
? 虛擬身份:ID、昵稱、網名
? 真實身份:姓名、物理位置
? 聯(lián)系方式:手機號、qq/微信、郵箱
? 組織情況:單位名稱、職位信息
"57.你用過微步嗎?介紹下?",
微步云沙箱提供完整的多維檢測服務,通過模擬文件執(zhí)行環(huán)境來分析和收集文件的靜態(tài)和動態(tài)行為數(shù)據,結合微步威脅情報云,分鐘級發(fā)現(xiàn)未知威脅。
"58.遇到.exe文件如何處理?",
出現(xiàn)exe文件夾解決辦法如下:
1、重啟電腦,進入安全模式中全盤殺毒,使用頑固木馬清除軟件清除和通過系統(tǒng)急救箱清除;
2、在系統(tǒng)中直接啟動殺毒軟件的全盤殺毒功能,同時啟用頑固木馬清除;
3、清除之后隱藏的文件夾無法顯示,在文件夾選項里設置顯示所有隱藏文件;
4、顯示被隱藏的文件夾;
5、在運行欄里輸入“regedit”打開注冊表編輯器即可。
"59.如何查看當前進程?",
Linux:ps或者netstat
Windows:netstat
"60.介紹一下常見的web應用組件端口(比如mysql、tomcat)?",
Mysql :3306
https: 443?
http:80
tomcat:8080
Telnet:23
ftp:21
TFTP:69
SSH:22
"61.windwos如何查看本地的端口連接狀況?",
依次點擊“開始→運行”,鍵入“cmd”并回車,打開命令提示符窗口。在命令提示符狀態(tài)下鍵入“netstat -a -n”,按下回車鍵后就可以看到以數(shù)字形式顯示的TCP和UDP連接的端口號及狀態(tài)。
Netstat命令用法
命令格式:Netstat -a -e -n -o -s-an
-a 表示顯示所有活動的TCP連接以及計算機監(jiān)聽的TCP和UDP端口。
-e 表示顯示以太網發(fā)送和接收的字節(jié)數(shù)、數(shù)據包數(shù)等。
-n 表示只以數(shù)字形式顯示所有活動的TCP連接的地址和端口號。
-o 表示顯示活動的TCP連接并包括每個連接的進程ID(PID)。
-s 表示按協(xié)議顯示各種連接的統(tǒng)計信息,包括端口號。
-an 查看所有開放的端口
"62.Windows和Linux的日志文件放在哪里?",
Windows系統(tǒng)日志:事件查看器
具體步驟如下:
我的電腦 - 右鍵單擊 - 管理 - 計算機管理 - 系統(tǒng)工具 - 事件查看器 -? Windows日志;
Linux系統(tǒng)日志:/var/log
"63.服務器存在webshell,如何處理?",
開啟防火墻,殺毒軟件等,關閉遠程桌面這些功能,定期更新服務器補丁和殺毒軟件。
?
總結
以上是生活随笔為你收集整理的网络安全工程师毕业答辩杂记的全部內容,希望文章能夠幫你解決所遇到的問題。