Since there is a break in the fun, might as well flog this again with a simplified view. The attachment is from OA, but D+ is quite similar. A HIPS monitors the behavior of processes for any of the items called out in a list of potential malware activities. The list can be set up to allow, block or ask, and hopefully after your system has run for a while you have sorted out everything into allow and block, with ask only for new processes. Or for new actions by known processes. Unfortunately, this is about the same list of activities you might look for malware to do. The greatest utility of HIPS today is probably for making YouTube videos. You sit someone down at a console, tell him that every popup will be malware, and ask him to decide to block or allow the popup. Even one of the morons/idiots referred to earlier in this thread can probably handle this assigment. You only score badly if you are “popup deficient”. If you sit him down with the same scenario and tell him that some of the popups might be malware, some might not, then you may end up with a lot of false positives and a bad score-so most testers don’t do this.
But neither of these situations have anything to do with a user’s problem.
The typical user will install new programs, see upgrades installed by existing programs, see some programs in new modes that were not previously accounted for, maybe even see some malware occasionally. So now there might be dozens (hundreds?) of popups in say, a week, saying things like “process xxxx would like to set a global hook- allow or block?”. Global hooks are almost universal methods of monitoring messages within the system, used regularly by much of the software environment, and also much used by malware. And pretty much a black art as far as users are concerned. In a purely statistical sense, most all of what everyone sees will not be malware (unless you are a very nasty boy
). So you get used to hitting “allow” since you will be right at least 9x% of the time and if you hit “block” you will need to figure out what to do next. And when the malware comes around, you may well be conditioned to hit “allow” for it also, unless there is a glaring message from the HIPS like “THIS IS MALWARE AND IF YOU ALLOW IT YOU ARE DOOMED”. So lots of debate on the real utility of a HIPS except for things like Matousec advertising. There were even some studies at the RSA Conference where a reasonably high percentage of users hit “allow” even with such a dire message.
So what can you do to help the user besides telling him “explrer.exe wants to set a global hook-allow or block?” Avast! actually uses a combination of approaches. One is the behavior blocker, where you look for patterns of behavior that are more indicative of malware than safe programs. But even here there can be a lot of overlap between malware and safeware behavior. Thus an opportunity for a HIPS to interfere-If you block (or allow in some cases) early with the HIPS, the BB never gets a chance to look for the pattern. Another is sandboxing, where if you are uncertain and want to be safe you can run the program and capture the results in a sandbox until you can make a decision on its safety. This can cause a lot of repeated executions, but allows the gathering of additonal data without endangering your system. And same issue with a HIPS involved.
Of course all of this only occurs after best efforts of the firewall to not let the connections be made in the first place and to remove malware on the AV side so it doesn’t get into your system at all, but with the tremendous rate of malware growth, there will be something to look at. So lots of static analysis beyond mere signatures. Whitelisting of known good programs is currently popular, although the problem is complicated by lots of existing unsigned programs with questionable pedigree. Blacklisting just can’t keep up with the current malware barrage. Heuristics, even AI driven heuristics show up in several systems.
I kind of like the Prevx approach, but there are lots of moral objections to it-like privacy; there is no opting out. All of the users are treated as collection nodes, with a data center (cloud) monitoring them in real time. The hope is that after the first few users get hosed, you can get out the word to the rest of your clients quickly. As long as you are not one of the earliest hosees, has some promise. And it is difficult to imagine a very large user community being talked into it. But glad I am not in the antimalware business. 