~ubuntu-branches/ubuntu/trusty/picviz/trusty

« back to all changes in this revision

Viewing changes to parsers/auth/ssh-opensession2pcv.pl

  • Committer: Bazaar Package Importer
  • Author(s): Pierre Chifflier
  • Date: 2009-03-30 10:42:08 UTC
  • Revision ID: james.westby@ubuntu.com-20090330104208-j095obwkp574t1lm
Tags: upstream-0.5
ImportĀ upstreamĀ versionĀ 0.5

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/perl
 
2
 
 
3
print "header {\n";
 
4
print "    title = \"Syslog picviz analysis\";\n";
 
5
print "}\n";
 
6
print "engine {\n";
 
7
print "    relative = \"1\";\n";
 
8
print "}\n";
 
9
print "axes {\n";
 
10
print "    timeline t [label=\"Time\"];\n"; # Time
 
11
print "    string   m [label=\"Machine\"];\n"; # Machine
 
12
print "    string   s [label=\"Service\"];\n"; # Service
 
13
print "    string   pam [label=\"Module\"];\n"; # PAM Module
 
14
print "    string   srcuser [label=\"Src user\"];\n"; # User
 
15
print "    string   dstuser [label=\"Dst user\"];\n"; # User
 
16
print "}\n";
 
17
 
 
18
print "data {\n";
 
19
 
 
20
while ($line = <>) {
 
21
 
 
22
        $line =~ s/\"/\\"/g; # We escape our quotes
 
23
        $line =~ s/&//g; # We escape our quotes
 
24
        $line =~ s/<//g; # We escape our quotes
 
25
        $line =~ s/>//g; # We escape our quotes
 
26
 
 
27
#Jul  1 22:39:02 quinificated CRON[3392]: pam_unix(cron:session): session opened for user root by (uid=0)
 
28
#Jul  1 22:44:33 quinificated su[3444]: pam_unix(su:session): session opened for user root by toady(uid=0)
 
29
#Jul  2 07:14:33 quinificated kdm: :0[3267]: pam_unix(kdm:session): session opened for user toady by (uid=0)
 
30
        if ($line =~ m/\w+  ?\d+ (\d+:\d+:\d+) ([\w-.]+) (\w+)[\[|:].*: (\S+)\(.*\): session opened for user (\w+) by(.*)\(.*/) {
 
31
                $t=$1;
 
32
                $m=$2;
 
33
                $s=$3;
 
34
                $pam=$4;
 
35
                $dstuser=$5;
 
36
                $srcuser=$6;
 
37
 
 
38
                if ($s !~ m/CRON/) { # I don't care of cron tasks (this is how you should attack me ;-) )
 
39
                        $dstuser =~ s/^\s+//;
 
40
                        if ($dstuser =~ m/root/) {
 
41
                                print "    t=\"$t\",m=\"$m\",s=\"$s\",pam=\"$pam\",srcuser=\"$srcuser\",dstuser=\"$dstuser\" [color=\"red\"];\n";
 
42
                        } else {
 
43
                                print "    t=\"$t\",m=\"$m\",s=\"$s\",pam=\"$pam\",srcuser=\"$srcuser\",dstuser=\"$dstuser\";\n";
 
44
                        }
 
45
                }
 
46
        }
 
47
}
 
48
 
 
49
print "}\n";
 
50