There are many online blacklists which are populated by volunteers. I'm looking for such a blacklist which contains records of hosts conducting portscans, ssh brute-forcing, or other similar "badness".
dshield looks good - but doesn't make the scanning IP availble - just shows the port data.
denyhosts allows you to upload/download a list of IPs trying to run ssh bruteforce attacks - but when I wrote my own RPC code to poll that list of IPs I found I couldnt' get the full list.
I'm aware that I could run denyhosts on a spare IP, then just copy the IPs it downloads but that feels icky...
I'm unaware of any existing service that I could use for my purposes.
So would there be any interest in a service listing only portscanning/ssh brute-force IPs? (Allowing DNS queries, XML-RPC, or rsync downloads of the submitted data.)
Obviously I have my own reason for wanting such a list of bad IPs... Those are probably obvious, but it does seem like it would be generally useful.
I'd be willing to host a server to process the submitted reports, and make the results available, but I guess thats the easy part. The hard part is persuading people to run my "submit IP" client. Which has to understand ssh logs, iptable logs, or something similar.. Ugh.
I guess between the machiens I work with and the machines I host myself I've got a fair number of IPs which I could collect scans from - I could populate the database myself. But this is a perfect job for distributed submission.
ObQuote: Batoru rowaiaru
It would probably be better to have your own, private database but then the concept is less interesting. So I'm not really sure that this is a perfect job for distributed submission ;)
You do raise a valid point. If you allow anybody to submit reports then the drawback is that some people will submit malicious reports.
The common approach seems to be to ignore reports of address 1.2.3.4 unless N people have submitted it. But in the presence of botnets that kind of approach doesn't help.
I think you need to have some trust metric involved whereby you pay attention to history and hope for the best.
But quite how that would work in practise is hard to predict. Almost an interesting enough reason to start it up!
For the moment I've changed my personal firewalls to log connects on port 23, 222, and 1022. Any client that hits all those ports will be a good candidate for auto-submitting to any system that I do come up with - private or public.
I suspect that IPs would rotate on and off the list very quickly - but if the query/lookup is fast then it would still be useful for my purposes.
Thanks for the offer Clifford. I've written most of the code now, and I'm just playing with it.
So far I've got:
Expect another post in a few days when I've got the submission handled properly..