From: RayLopez99 on
A bit off-topic, but how do you check what processes or services or
code is running in memory? Concrete example: I play chess online,
and I also observe chess matches, such as yesterday's exciting finish
to the 2010 World Chess championship. When I was on the chess site
that was streaming the match, on the web page it said "Warning!
ChessBase detected...". Chessbase is a program that you can run to
analyze a chess game. For some reason the sponsors of this match
wanted you to rely just on their analysis, not any external program
like Chessbase. So somehow they detected what program(s) were running
in memory on your PC. I've seen this before when playing chess
online, at various sites, which will also detect if you have any chess
programs running in the background (to prevent cheating by relying on
such programs when playing).

How do they do this? Must be easy to do since it escapes all anti-
virus/ firewall programs (so it must be obviously "read only"). Or is
it that easy?

Maybe a user's Task Manager has a way of being called by any external
program? But for a web application? I would have though that's a
security violation.

RL
From: Arne Vajhøj on
On 12-05-2010 12:30, RayLopez99 wrote:
> A bit off-topic, but how do you check what processes or services or
> code is running in memory? Concrete example: I play chess online,
> and I also observe chess matches, such as yesterday's exciting finish
> to the 2010 World Chess championship. When I was on the chess site
> that was streaming the match, on the web page it said "Warning!
> ChessBase detected...". Chessbase is a program that you can run to
> analyze a chess game. For some reason the sponsors of this match
> wanted you to rely just on their analysis, not any external program
> like Chessbase. So somehow they detected what program(s) were running
> in memory on your PC. I've seen this before when playing chess
> online, at various sites, which will also detect if you have any chess
> programs running in the background (to prevent cheating by relying on
> such programs when playing).
>
> How do they do this? Must be easy to do since it escapes all anti-
> virus/ firewall programs (so it must be obviously "read only"). Or is
> it that easy?
>
> Maybe a user's Task Manager has a way of being called by any external
> program? But for a web application? I would have though that's a
> security violation.

The .NET way would be to use the System.Diagnostics.Process class
to list all processes and information about them (or WMI if more
details is needed).

I hope that the program in question is a fat client with full privs,
because something running inside the web browser should not have
access to that kind of information.

Arne

From: RayLopez99 on
On May 12, 12:58 pm, Arne Vajhøj <a...(a)vajhoej.dk> wrote:

>
> I hope that the program in question is a fat client with full privs,
> because something running inside the web browser should not have
> access to that kind of information.
>
> Arne

Thanks Arne. The Chessbase program is a fat client residing locally
on my machine, and my web browser is Firefox. The website in question
used what looked like to me JavaScript or something akin to Flash or
Silverlight, and was able to figure out I was running Chessbase in the
background and give the warning it did. Pretty cool, and probably a
bit more sophisticated than I assumed to be able to detect that.

RL