Still a work in progress & playing with it. I have found having sigs to automatically move over PDFs with JavaScript, Embedded Files etc & even converting the PEID sigs to clamav to move over (known) packed files helps too. I would have preferred to use NFEX (<a href="http://blogs.cisco.com/security/network-based-file-carving/">http://blogs.cisco.com/security/network-based-file-carving/</a>) but that doesn't seem to like multiple PCAPs being fed into it, I would have preferred that as that is more session based. <br>
<br>My aim isn't to capture & store all EXEs (well not the now, I was thinking perhaps depending on storage they would be stored and keep rescanning them for a few days to see if anything new pops up) but more to get across either the known malicious ones and the suspicious ones. So far seems to be working pretty well and at least now if I see an alert for JavaScript for a PDF or something I can go to the PDF and see what that JavaScript was and so on so it is a big help. Even the performance is surprisingly good on standard hardware. I am also going to put out Dionaea honeyports (<a href="http://dionaea.carnivore.it/">http://dionaea.carnivore.it/</a>) to capture stuff in the environment being spread.<br>
<br>It may not be perfect and it won't get everything (it will miss malicious EXEs I am sure either through lack of knowledge to highlight it as a risk or obfuscated & custom packed exes) but good for a free solution. As I said the Mal. Analyst's Cookbook has been a good help for ideas, tools and things to extend it (automatic analysis scripts, automatic unpacking examples scripts etc) and for ideas. Hopefully as time goes on and more stuff goes into it the less will slip past without being kept for me to look at. Results can be useful anyway and has found malware. In doing this I have found the hardest parts to do was the carving and then more importantly the classification for what should be sent for further analysis (later I might have a better way to further filter out ok binaries out of the ones flagged by clamav. Considering this is coming off the network and picking out stuff it is pretty cool.<br>
<br>/mal_binaries/00000001.pdf: PDF Javascript Function Declared.UNOFFICIAL FOUND
<br>/mal_binaries/00000001.pdf.001: PDF Embedded EXE MZ PE.UNOFFICIAL FOUND
<br>/mal_binaries/00000002.exe: PACKER.PEnguinCryptv10.UNOFFICIAL FOUND
<br>/mal_binaries/00000001.exe: PACKER.UPXv20MarkusLaszloReiser.UNOFFICIAL FOUND <br><br>Regards, Kevin<br><br><br><div class="gmail_quote">On 29 September 2011 20:24, Martin Holste <span dir="ltr"><<a href="mailto:mcholste@gmail.com">mcholste@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">> 2) I then have a script which runs every 4 mins and calls tcpxtract to<br>
> directly carve the files out of those PCAPs (currently EXEs & PDFs) and then<br>
> once that is done clamav is called with some additional sigs to help<br>
> highlight suspicious things too<br>
<br>
That's a really mature setup!  I don't do anything with ClamAV right<br>
now.  I used to auto-submit to VirusTotal, but their non-web interface<br>
was taking around two hours for a scan result, so it was usually not<br>
tactically helpful.<br>
<br>
I will plug my <a href="http://streamdb.googlecode.com" target="_blank">streamdb.googlecode.com</a> project as a great way of<br>
bypassing daemonlogger and tcpxtract.  What I do is use a script which<br>
receives a notification every time a POLICY EXE sig hits with the<br>
src/dst IP, which is all streamdb needs to instantly grab the stream<br>
and carve the executable on-the-fly.  You can even retroactively<br>
search by any libmagic label (filetype=executable) or PCRE<br>
(pcre=PE\x00\x00) so you can use it to find PDF's, DOC, Flash, etc.<br>
Each extracted object has an object ID (oid), so as long as the<br>
streams are around, you have an indexed ID for that exact object<br>
observed in the network.  That makes attaching it to tickets or<br>
emailing it to other analysts trivial, and you know they'll be working<br>
on the same file you were.<br>
<br>
I thought this was worth mentioning streamdb again because I just<br>
updated the download tarball to include my committed code fixes which<br>
take care of the issues MySQL 5.1 was having; it should now work with<br>
any MySQL version.<br>
</blockquote></div><br>