2013-08-17 24 views
1

任何人都可以幫助將IOC腳本的一小部分轉換爲YARA規則來識別惡意軟件嗎?如何編寫基於IOC腳本的YARA規則?

我會嘗試學習如何根據任何人爲我寫的例子編寫YARA規則。

這是國際奧委會腳本的一小部分:

<IndicatorItem id="50455b63-35bf-4efa-9f06-aeba2980f80a" condition="contains"> 
<Context document="ProcessItem" search="ProcessItem/name" type="mir"/> 
<Content type="string">winlogon.exe</Content> 
</IndicatorItem> 

<IndicatorItem id="b05d9b40-0528-461f-9721-e31d5651abdc" condition="contains"> 
<Context document="ProcessItem" search="ProcessItem/HandleList/Handle/Type"   type="mir"/><Content type="string">File</Content> 
</IndicatorItem> 

誰能還向我解釋如何將此轉化爲YARA,我可以使用Python這樣做呢?非常感謝!!

回答

2

從該IOC腳本代碼片段中顯示的信息中,您不能創建YARA規則。 YARA規則是基於文件的內容,所以,你必須尋找到文件內容相關的指標,像這樣的:

<IndicatorItem id="09cd0494-702c-4fe2-bbd4-29538cb3b685" condition="contains"> 
     <Context document="FileItem" search="FileItem/StringList/string" type="mir" /> 
     <Content type="string">http://%s/record.asp?device_t=%s</Content> 
     <Comment>unique strings found in most samples in family</Comment> 
</IndicatorItem> 

該指標是告訴你,感染的文件包含字符串http://%s/record.asp?device_t=%s。在YARA表達了同樣的想法是這樣的:

rule <a name for your rule here> { 
    strings: 
    $a = "http://%s/record.asp?device_t=%s" 
    condition: 
    $a 
} 

這裏有一個工具,它會自動執行國際奧委會YARA翻譯:

https://github.com/mandiant/ioc_writer/tree/master/examples/openioc_to_yara

這裏一些幻燈片,可能對您有用也:

https://media.blackhat.com/us-13/Arsenal/us-13-Gibb-IOCWriter_11-Slides.pdf