Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
= About ClickSpotter
ClickSpotter is a real-time web server logfile monitor with IP geolocation support. It has three main features that differentiate it from the rest of the log file analyzers.
It processes your Apache access log file in real-time and produces consolidated live reports about your visitors and current page accesses.
It can pinpoint your visitors and the path they used through the Internet on a worldmap using IP geolocation.
It is a real desktop application, not just a bunch of generated web pages with a clumsy browser-based interface.
= Installation
ClickSpotter is written in Ruby[http://www.ruby-lang.org]. It uses the standard Ruby mechanism for distribution. The format is called {Ruby Gems}[http://docs.rubygems.org]. Alternatively, you can install from a tarball using setup.rb.
This is the first release. Consider it being beta quality right now!
== Requirements
Ruby applications are platform independent. There is no need to compile anything. But ClickSpotter has a very small set of dependencies that you have to take care of first. Most Linux version already have them included. Just have sure you have the minimum required version.
[Ruby] ClickSpotter is written in Ruby. You need a Ruby runtime environment to run it. This can be downloaded from RubyForge[http://rubyforge.org]. Most Linux distributions usually have Ruby already included. ClickSpotter currently needs at least version 1.8.4. Older version have been reported to show frequent crashes due to what seems to be bugs in the networking libraries.
[Qt] ClickSpotter uses the Qt Toolkit from Trolltech[http://www.trolltech.com]. This toolkit was choosen because it matches the elegance and beauty of Ruby. Almost every Linux distribution has a recent version of Qt included.
[qtruby] To use Qt with Ruby, you also need the qtruby bindings. This is the magic glue that let's Ruby interact with Qt. See {the page on RubyForge}[http://rubyforge.org/projects/korundum] for details. You need at least version 1.0.11.
[traceroute] This is the commandline tool that comes with many Linux distributions. If you don't have it and can't find a distribution package, you can get it at {this site}[http://www.tazenda.demon.co.uk/phil/net-tools].
[ClickSpotter] Get it from the {Download Page}[http://clickspotter.ath.cx/files/Download.html]
== Installation Process
Just run as root
gem install ClickSpotter-0.1.1.gem
to install the gem file. It will install all components of the Gem in the appropriate place.
See here[http://i.loveruby.net/en/projects/setup/doc/usage.html] for instructions on how to install the tarball. If you use a non-standard prefix or datadir you need to add the path to AppConfig.rb. Otherwise ClickSpotter will not be able to find the worldmap images.
== Update from previous versions
Updates work just like the installation.
gem update ClickSpotter-0.1.1.gem
= Using ClickSpotter
ClickSpotter's features were wrapped in an easy to use graphical user interface. It does not create an entry in your desktop menu or put an icon on the desktop. You need to start it from the commandline as +clickspotter+. Most other functions should be obvious.
== Configuring your server log files
The first thing you need to do is define your log file(s). You need to provide a name, the location of the file and the base URL(s) of your server. The file must be accessible through the local filesystem of the machine that you are running on. If you don't want to run ClickSpotter on your web server or log server, you can use
ssh your.web.server tail -f /var/log/apache/my.server-access_log > local_copy.log
to get a live copy of your server log on your local machine.
The log file must be in Apache2 combined log file format. The log entries should look like this:
212.114.251.44 - - [18/Jan/2006:16:11:20 +0100] "GET / HTTP/1.1" 200 9406 "-" "Mozilla/5.0 (compatible; Konqueror/3.4) KHTML/3.4.2 (like Gecko)"
ClickSpotter can only monitor one log at a time. But you can run multiple instances of ClickSpotter. You can pass the name of a log that you have defined when you start ClickSpotter from the command line. Here we assume that you have defined a log file with the name +mylog+.
clickspotter mylog
== Other settings
You should also check out the second tab of the configuration dialog. It can be found from the menu under 'Settings' => 'Configure ClickSpotter'.
The most important setting is the browser launch command. Set this to your favorit browser. The URL of the page is appended to this command to open certain web pages from within ClickSpotter.
The cache settings are also worth a view. See the peformance section later on for more details on this topic.
= Geolocation Support
One of the highlights of ClickSpotter is the Geolocation support. It can not only map your visitors on a world map, but also show the path they took through the Internet to reach your server.
The Geolocation information is obtained during run-time from hostip.info[http://www.hostip.info]. This is a public Geolocation service. The project that runs this site is still fairly young, so the records are not always correct. You can directly access their database by clicking the 'Correct Data' button or by clicking on the router list view. Please help to improve their database!
= Performance considerations
In contrast to most other log analyzer tools, ClickSpotter is amazingly fast. This is certainly a plus for a real-time tool. But it has it's limits. Both the memory consuption as well as the performance of the resolvers can limit the amount of traffic you can monitor. The DNS, Geolocation and Traceroute resolver work asynchronosly in the background. Information is displayed when available, but it does not prevent ClickSpotter from showing other details it already knowns. All screen are updated ever 5s with new information when available.
= Bugs reports and other feedback
ClickSpotter was my first Ruby program. I mostly did it to practice my Ruby skills and evaluate the state of Ruby. Since I enjoyed programming Ruby so much I decided to turn it into a releaseable piece of software. But I'm not planning to spend lots of time on turning ClickSpotter into the Swiss Army Knife of log file monitors. I'm open to constructive feedback and patches, but bare with me if I don't find the time to reply.
= Copyright and License
ClickSpotter is (c) 2005, 2006 by Chris Schlaeger <cs (at) kde (dot) org>
This program is free software; you can redistribute it and/or modify it under the terms of version 2 of the GNU General Public License as published by the Free Software Foundation.
FAQs
Unknown package
We found that ClickSpotter demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.