2023 春招安全研究崗位面經(jīng)分享
來自 Drunkbaby 師傅
原文鏈接 https://drun1baby.top/2023/08/23/2023-%E6%98%A5%E6%8B%9B%E5%AE%89%E5%85%A8%E7%A0%94%E7%A9%B6%E5%B2%97%E4%BD%8D%E9%9D%A2%E7%BB%8F%E5%88%86%E4%BA%AB/
安恒衛(wèi)兵實(shí)驗(yàn)室
1、你的簡歷與你之前發(fā)過來的簡歷有什么變化嗎?
2、說一說你研究過的東西,然后有什么產(chǎn)出
這里我說研究了 Weblogic、shiro,但是沒產(chǎn)出,那邊似乎比較失望。
3、最近出了 Weblogic 的一個新的洞,你有研究過嗎?自己在研究的時候有沒有思考過別人是怎么挖出來的洞。
人麻了,沒復(fù)現(xiàn)漏洞過,然后也沒思考過這個。。
4、你覺得挖什么樣子的洞比較好呢?你一般是怎么開展研究的
我說看漏洞類型,但是無論如何你需要先去簡單了解一下它的流程,如果一個組件的流程你不清楚,盲目的開始挖洞比較愚蠢,像盲人摸象。然后在了解過基礎(chǔ)流程之后,如果是反序列化的洞,就用 codeql、tabby 這些東西去找漏洞。
不知道那邊是什么想法,不過有一說一面我的時候感覺大部分時候都是吸氣和嘆氣qaq
5、你學(xué)習(xí)安全是什么時候開始的呢,一路上的經(jīng)歷是怎么樣的
就簡單聊了聊
6、有沒有什么讓你感覺很自豪的項(xiàng)目
。。。。。有個錘子,當(dāng)時說了 golang 寫 sqlmap
7、你是什么狀況下去學(xué)習(xí) golang 的呢?是出于什么考慮呢
似乎很多面試官都會問這個問題,還是和之前一樣回答了一下。
8、為什么在連連只實(shí)習(xí)了一個月呢?都做了什么業(yè)務(wù)
xxx
9、能簡單說說在連連做了什么滲透測試嗎?當(dāng)時說了越權(quán)的,他問除了越權(quán)呢?當(dāng)時真的太菜了。。??偛荒苷f我在整理文檔吧媽個雞的。
10、能說一說常見的 SQL 注入種類嗎?自己有繞過過一些 SQL 注入的 waf 嗎?
這里說了繞過安全狗,麻了,當(dāng)時就想到很可能會問 HIDS 的相關(guān)內(nèi)容,果不其然后面就問了
11、一般是怎么繞 waf 呢?具體說說
我說了先 fuzz,然后具體的 bypass 就根據(jù)可用字符來打,那邊似乎很不滿意
12、有遇到過語意型的 waf 嗎?自己是怎么 bypass 的呢?
我這里真的有點(diǎn)麻,滿腦子都是 HIDS 和阿里的產(chǎn)品,包括先知 ban waf
13、如果給到你一個1day,你要怎么樣進(jìn)行漏洞分析呢?
大腦宕機(jī)中,我感覺這里給的范圍就很寬泛啊,應(yīng)該要給漏洞類型吧至少。于是乎我回答,先簡單分析一下它的流程,然后根據(jù)漏洞類型來找。比如你是個反序列化的洞,我就去找 source sink。似乎那邊相當(dāng)不滿意
14、又問了我如果就是一個 SQL 注入的 1day,讓你漏洞分析,你會怎么分析呢,比如是有些特定條件下的 SQL 注入,比如什么什么配置文件下,你會怎么分析呢?
我回答的和之前差不多,但是這里很明顯不對,應(yīng)該細(xì)聊一下 SQL 注入。
15、那你這樣分析流程不會很耗時間嗎?如果ddl之前你還沒有分析完漏洞呢?你會怎么辦?
。。。。。。。。。。
我說我會加班,然后靜下心來好好分析。
16、那如果還是分析不出來,你是不是要思考一下你的方法是不是有問題了
我: 。。。。。。。。。。。。。。。嗯……應(yīng)該是吧
17、那如果你的 1day 積累的很多都完不成呢
我說我可能會考慮問一下其他有過經(jīng)驗(yàn)的師傅,多多取經(jīng)。
我大致了解你的情況了,能說說 SSRF 怎么樣才能最好的利用呢?
我說,SSRF 用的好的話是可以 rce 的,但是前提是你需要先探活。當(dāng)然這里 rce 的方式有很多,比如配合文件上傳 gopher 打。
18、那如果目前我們探活出來有個 redis 服務(wù),你要怎么打呢
SSRF 打 redis 的本質(zhì)就是仿 redis 命令,將其寫入一些 shell。我答了最多的一般都是 crontab,還有寫入 shell,就類似于文件包含的原理。其實(shí)還有寫入 ssh 私鑰。還有主從復(fù)制什么的。
19、能說一說 ssrf 的防御嘛
我說了加白,最常用的方法,后續(xù)又補(bǔ)充了說限制一些不必要的協(xié)議,像 gopher 這種完全沒必要啊,還有就是不給回顯,這樣的話對方探活也探不出什么東西,可能就以為這里并不存在 ssrf,但還得是白名單牛逼
20、那如果在變量里面呢?你要怎么過濾
我感覺這里就是加個 filter,實(shí)現(xiàn)單一職責(zé)原則
21、那如果我這里限制了 127.0.0.1,限制了 127.0.0.2 ,那你要怎么 bypass 呢
我直接說了 dns rebinding,我說這種攻擊非??捎^。面試官問我還有沒有其他的呢?我補(bǔ)充了 @ 符繞過,進(jìn)制轉(zhuǎn)換,句號替換.符號。
22、能展開講講 @ 符是這么繞過的嗎
這里其實(shí)是和 url 協(xié)議是有關(guān)系的,因?yàn)槲覀儽举|(zhì)的 url 協(xié)議是這樣請求資源的
http∶//url@ip,然后后面跟上請求的資源,比如 http://www.baidu.com@1.1.1.1,那么我們這里把后面 @ 的內(nèi)容修改成惡意的 127.0.0.1即可。
23、面試官又問,如果把這些各種符號都禁了呢,因?yàn)楹芏鄷r候我們會過濾這些輸入。
我說那就 dns rebinding 唄,面試官說 dns rebinding 的事兒到時候再說。然后答了進(jìn)制轉(zhuǎn)換,他說算一種,又答了 xip.io 與 xip.name
泛域名解析,無需配置,將自定義的任何域名解析到指定的 IP 地址。假設(shè)你的 IP 地址是 10.0.0.1,你只需使用 前綴域名+IP地址+xip.io 即可完成相應(yīng)自定義域名解析。
24、關(guān)于內(nèi)存馬有了解嘛?可以簡單講講有哪些內(nèi)存馬嗎?
我說了我只搞了 Tomcat 型內(nèi)存馬,我知道還有 Agent 型內(nèi)存馬和 websocket 型,還有 upgrade 型內(nèi)存馬。
25、內(nèi)存馬的查殺了解過原理嗎?
我麻了,我說看調(diào)用的所有的filters,看哪些 filters 是惡意的,是程序沒有的
26、后面問了問實(shí)習(xí)薪資期望
接下來就是反問環(huán)節(jié)
白帽匯安全研究面試
一面
1、自我介紹
2、講一講最近在做什么吧
3、說一說 Shiro 這個洞都了解多少
4、自己有沒有獨(dú)立挖出過 0day
5、weblogic 了解多少
說了一下復(fù)現(xiàn)了的漏洞,然后面試官讓我說一說具體的一個漏洞
6、weblogic 的 T3 和 XMLDecoder 漏洞展開講講吧
7、fastjson 復(fù)現(xiàn)過多少漏洞,你研究的版本是多少
8、能簡單說一說 Java 反序列化的流程嗎?
9、講講 RMI 的通信原理以及為什么會存在漏洞
10、看到你還有在看 PHP 的東西,一般是研究哪種為主呢,PHP 還是 Java
11、說一說你做過的一些項(xiàng)目吧
12、寫這個 Java 路線,你是出于什么考慮呢?
13、看到你審計過一些 CMS,自己從中有什么收獲嗎?
二面
二面主要是聊了聊一些挖洞的思想/個人經(jīng)歷,很有聊天的感覺,個人忘記記錄完全了。
HR 面
1、看到你的簡歷上寫了有說網(wǎng)絡(luò)安全協(xié)會,都做了協(xié)會哪些工作呢
2、預(yù)期薪資是多少呢,我說在北京差不多 330/天吧
后面又說給實(shí)習(xí)生薪資一個月是 5500
3、有沒有一段很難的時光
4、你是獨(dú)生子女嗎
5、最讓你自豪的一件事是什么
6、在 CTF 上讓你有很自豪的事情嗎
7、有收到其他家的 offer 嗎
8、目前多久能過來呢
極氪安全研究
1、簡單說一說你作為紅隊(duì),在 hvv 期間會有怎樣的視角
我說,這是不是就是 hvv 視角下的紅隊(duì)攻擊。面試官說是的
然后就說了社工釣魚、信息收集、外網(wǎng)打點(diǎn)、內(nèi)網(wǎng)橫移、還有就是通過信息泄露拿源碼,再進(jìn)行源碼審計,再就是 0day、1day 的應(yīng)用、惡意流量分析
2、聽到你說了源碼審計,簡單說一下思路吧
就還是那一套 filter ——> pom.xml ——> 細(xì)的功能點(diǎn) ——> 調(diào)試
3、說一說如果 hvv 期間出了一個 fastjson 的 day,你需要怎么防護(hù)
給我特么問住了,面試官其實(shí)在這個過程中一直在向我往工具利用那方面引導(dǎo)。我說了加黑,然后加白這樣的策略。
他又和我說,怎么樣判斷資產(chǎn)里面是否存在這個漏洞呢。我說用工具測,說如果你們有比較成熟的白盒掃描工具是可以的,但是我沒用過。反正這個問題糾結(jié)了很久。。。。
4、說一說內(nèi)網(wǎng)橫移的思路吧
我說分 Windows 和 Linux,Linux 比較難橫移;Windows 就還是那一套
5、說一說除了 web 服務(wù)之外還有服務(wù)值得注意
這個問題問的挺。。。隱晦
其實(shí)就是問有哪些端口,我就說了那些
6、說一說你用 python 做過的一些項(xiàng)目吧
簡單聊了聊
7、有做過白盒代碼審計的一些項(xiàng)目嗎
沒有
8、如果你挖掘 Java 反序列化的 0day,你會怎么挖掘呢
就還是那樣
下面是反問環(huán)節(jié)
主要問了問他們的業(yè)務(wù)、轉(zhuǎn)正、一般上班強(qiáng)度如何、部門地位如何、食堂
就這些
墨云科技安全研究
總體上來說和白帽匯的面試很像,當(dāng)時便沒有記錄,而且問的很急
奇安信觀星實(shí)驗(yàn)室
一面
1、先做個自我介紹吧
2、我看你有復(fù)現(xiàn)過一些 Java 反序列化的漏洞,簡單講一講漏洞原理吧。
easy
3、在這些反序列化的鏈子里面,有什么比較共通的地方嗎
我說了鏈?zhǔn)?、鏈尾、sink 要求
4、你有審計 Java 代碼的經(jīng)驗(yàn),可以簡單說一說嗎?
說了一些思路
5、我看你 CTF 打的很多,其中應(yīng)該有很多 PHP 吧,然后你挖的 PHP 洞也挖了幾個,簡單講講讓你印象深刻的洞吧。
說了一個 SQL 注入,一個 phar
6、我看你復(fù)現(xiàn)過 fastjson 系列的洞,說一說最新的那個 fastjson 1.2.80 的洞吧,就淺藍(lán)挖的那個
日了。。。我沒很好的復(fù)現(xiàn)過
7、那你說一說 fastjson 的一些漏洞原理和繞過思路吧
我說了一些,但是有一條通殺的 jdbc 沒有很好的分析過,后悔。
8、PHP 反序列化的漏洞挖掘思路可以說一下嗎?
這個不會
9、jpress 我看你有審計的校驗(yàn),有自己搞出來一些前臺 RCE 嗎
無
10、簡單聊一聊 Java 內(nèi)存馬吧,原理以及如何寫入
后面就是反問環(huán)節(jié),問了一下他們的業(yè)務(wù),然后大概組織架構(gòu),轉(zhuǎn)正情況
二面
說實(shí)話二面沒有準(zhǔn)備好,因?yàn)橐恍┨厥庠?/p>
1、做個自我介紹吧,主要講一講自己研究哪個方向。
2、PHP 審計過哪些大型的 CMS 呢
我說了 TP,還有一些其他的自己審計的
3、TP 里面不是有個命令執(zhí)行嗎?可以說一說里面大概后利用是怎么利用的,比如現(xiàn)在目標(biāo)站開啟了 disabled_function
我這里有點(diǎn)麻,本身 PHP 就不是很好,我說如果利用角度來說,蟻劍的插件就行,如果沒有這個條件的話就手動寫入 .so
文件
那你詳細(xì)說一說怎么寫進(jìn)去…… 寄、我忘了具體利用手法
4、PHP 里面的 extract 變量覆蓋這個問題,有在實(shí)際漏洞挖掘的時候遇到過嗎
沒有
5、面試官似乎還是很想問 PHP 的,問了 PHP 的另外一個問題,還是沒怎么答出來。
又問了問 最近打的 CTF,主要是 ant 和 阿里云,讓我講講印象深刻的題目,我都忘得差不多了。。
6、說一說 Java JDBC MySQL 反序列化這個漏洞吧
我說這只是給了一個入口,需要偽造 MySQL fake server
7、那你說一說怎么判斷 MySQL jdbc 的版本吧
我說 wireshark 抓個包,內(nèi)容應(yīng)該會在里面
8、看你 Java CMS 審計過 jpress,當(dāng)時是復(fù)現(xiàn)還是
我說了復(fù)現(xiàn),然后讓我聊一聊印象最深刻的一個洞
9、如果現(xiàn)在有個文件上傳,但是只有 Web-INF
下的 .jsp
文件才會被渲染,你有什么思路
我說了 SSTI、crontab、sh、weblogic 的部署都可以
10、你有在大型攻防演練當(dāng)中跟進(jìn)過一些 VMware 類型的漏洞嗎?展開聊聊
我說我只做過藍(lán)隊(duì),然后 VMware 的話,最新的洞正在看。然后簡單講一講,感覺面試官沒有復(fù)現(xiàn)這個漏洞
11、聽你說分析了 RocketMQ 的洞,簡單聊聊吧
就簡單聊了聊
12、那如果不出網(wǎng)呢?
。。。。我說這個單純從這個漏洞的角度來說,其實(shí)是可以寫入 crontab 的,但是實(shí)際打內(nèi)存馬,我還沒有試過。
下面就是反問環(huán)節(jié)
瀝泉科技紅隊(duì)安全研究
1、做個自我介紹吧
2、看你漏洞這塊,Java,PHP,Python 都有了解是嗎?簡單說一說怎么審計 PHP 漏洞的吧。
說了用 Seay 掃一掃,然后對掃出來的重點(diǎn)去審計,黑白盒結(jié)合一起打
3、Seay 是很老的東西了,你有沒有修改一下它的規(guī)則什么的
答:沒有。。。寄
4、如果你沒有修改過的話,那你怎么樣才能挖出別人挖不出來的洞呢?
不會啊。。麻了
5、說一說了解的 Java 漏洞吧,像 fastjson、shiro 這些,就先說說 fastjson 吧,你對它了解多少。
這里我說了說 fastjson 最好用的兩條鏈子,一條是 templatesImpl 的,另外一條是不出網(wǎng)的 BCEL。
6、簡單說一說 fastjson 的 checkAutoType 吧
如果開啟了就是先白名單過濾,再黑名單。
如果沒開啟就是會先黑名單,再白名單。
7、那關(guān)于 fastjson 的 parse 和 parseObject 呢?
parseObject:返回 fastjson.JSONObject 類
parse :返回我們的類 User
一般來說 parseObject 的利用面更廣
8、有學(xué)過哪些框架和組件呢?為什么要學(xué)他們
就簡單說了說,不過我的回答好像讓那邊挺滿意的
9、關(guān)于 Shiro 的漏洞,有了解嗎?展開說說
說了 550,721 和權(quán)限繞過
10、說一說 721 的 Oracle Padding Attack 的原理
寄,沒背過
11、你用 Python 寫過什么工具嗎
說了說自己寫了爬蟲,然后寫了個網(wǎng)段掃描的工具。
12、說到 nmap,一般 nmap 掃描很慢的時候會怎么辦呢?
這里應(yīng)該是用 msscan 比較好
13、有了解過內(nèi)網(wǎng)么?說一說 Kerberos 協(xié)議的流程吧,后面又問了 NTLM 協(xié)議的流程
寄
14、除了 NTLM Hash,還知道哪些 Hash 呢
寄
15、src 自己有在挖嘛,簡單說一說信息收集的一些方法吧。
寄,后門 l3m0n 師傅說有十多種方法。。。
16、話說 fastjson 需要碰到高版本的 jdk8 的時候要怎么繞過呢
這個其實(shí)就是 jndi 打高版本 jdk 的思路
17、Java 設(shè)計模式了解多少呢
18、打 CTF 是跟著戰(zhàn)隊(duì)拿獎還是自己校隊(duì)拿獎
19、內(nèi)網(wǎng)滲透的流程都了解嗎
20、我大致了解你的情況了,可以說一說你的規(guī)劃預(yù)期嗎
接下來就是反問環(huán)節(jié),主要是問了問他們到底是做什么業(yè)務(wù)的。
面我的是 l3m0n 師傅,很強(qiáng)
總結(jié)一下
投的太晚了,金三銀四,我是四月底投的,差不多五月初的樣子,這個非常不利。
自己能力上還是有非常多的不足。