thm 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,111 @@
1
+ -- http://dev.maxmind.com/geoip/geoip2/geolite2/
2
+
3
+ -- id INT GENERATED ALWAYS AS
4
+ -- IDENTITY (
5
+ -- START WITH 1 INCREMENT BY 1
6
+ -- NO MINVALUE NO MAXVALUE
7
+ -- CACHE 2 CYCLE
8
+ -- ) primary key,
9
+
10
+ DROP TABLE "threatmonitor".geoipdata_ipv4blocks_city;
11
+ CREATE TABLE "threatmonitor".geoipdata_ipv4blocks_city (
12
+ network varchar(18),
13
+ geoname_id char(10),
14
+ registered_country_geoname_id char(30),
15
+ represented_country_geoname_id char(30),
16
+ is_anonymous_proxy char(30),
17
+ is_satellite_provider char(30),
18
+ postal_code char(30),
19
+ latitude char(10),
20
+ longitude char(10)
21
+ );
22
+
23
+ CREATE INDEX cindex_ipv4_network ON "threatmonitor".geoipdata_ipv4blocks_city(network);
24
+ CREATE INDEX cindex_ipv4_geoname_id ON "threatmonitor".geoipdata_ipv4blocks_city(geoname_id);
25
+ COPY 2519918 OFFSET 2 RECORDS INTO "threatmonitor".geoipdata_ipv4blocks_city FROM '/data2/MaxMind/GeoLite2-City-CSV_20150602/GeoLite2-City-Blocks-IPv4.csv' USING DELIMITERS ',', '\n', '';
26
+
27
+
28
+ DROP TABLE "threatmonitor".geoipdata_locations_city;
29
+ CREATE TABLE "threatmonitor".geoipdata_locations_city (
30
+ geoname_id char(10),
31
+ locale_code char(2),
32
+ continent_code char(2),
33
+ continent_name char(15),
34
+ country_iso_code char(2),
35
+ country_name char(50),
36
+ subdivision_1_iso_code char(70),
37
+ subdivision_1_name char(50),
38
+ subdivision_2_iso_code char(70),
39
+ subdivision_2_name char(50),
40
+ city_name char(70),
41
+ metro_code char(30),
42
+ time_zone char(30)
43
+ );
44
+
45
+ CREATE INDEX cindex_country_geoname_id ON "threatmonitor".geoipdata_locations_city(geoname_id);
46
+ COPY 80006 OFFSET 2 RECORDS INTO "threatmonitor".geoipdata_locations_city FROM '/data2/MaxMind/GeoLite2-City-CSV_20150602/GeoLite2-City-Locations-en.csv' USING DELIMITERS ',', '\n', '';
47
+
48
+
49
+ DROP TABLE "threatmonitor".geoipdata_ipv4blocks_country;
50
+ CREATE TABLE "threatmonitor".geoipdata_ipv4blocks_country (
51
+ network varchar(18),
52
+ geoname_id char(10),
53
+ registered_country_geoname_id char(30),
54
+ represented_country_geoname_id char(30),
55
+ is_anonymous_proxy char(30),
56
+ is_satellite_provider char(30)
57
+ );
58
+
59
+ CREATE INDEX index_ipv4_network ON "threatmonitor".geoipdata_ipv4blocks_country(network);
60
+ CREATE INDEX index_ipv4_geoname_id ON "threatmonitor".geoipdata_ipv4blocks_country(geoname_id);
61
+ COPY 169357 OFFSET 2 RECORDS INTO "threatmonitor".geoipdata_ipv4blocks_country FROM '/data2/MaxMind/GeoLite2-Country-CSV_20150602/GeoLite2-Country-Blocks-IPv4.csv' USING DELIMITERS ',', '\n', '';
62
+
63
+ DROP TABLE "threatmonitor".geoipdata_locations_country;
64
+ CREATE TABLE "threatmonitor".geoipdata_locations_country (
65
+ geoname_id char(10),
66
+ locale_code char(2),
67
+ continent_code char(2),
68
+ continent_name char(15),
69
+ country_iso_code char(2),
70
+ country_name char(50)
71
+ -- FOREIGN KEY (geoname_id) REFERENCES "geoipdata".geoipdata_ipv4blocks_country (index_geoname_id)
72
+ );
73
+
74
+ CREATE INDEX index_country_geoname_id ON "threatmonitor".geoipdata_locations_country(geoname_id);
75
+ COPY 250 OFFSET 2 RECORDS INTO "threatmonitor".geoipdata_locations_country FROM '/data2/MaxMind/GeoLite2-Country-CSV_20150602/GeoLite2-Country-Locations-en.csv' USING DELIMITERS ',', '\n', '';
76
+
77
+ plan SELECT continent_name, country_name
78
+ FROM "threatmonitor".geoipdata_ipv4blocks_country a
79
+ JOIN "threatmonitor".geoipdata_locations_country b
80
+ ON (a.geoname_id = b.geoname_id)
81
+ JOIN "threatmonitor".ippacket c
82
+ ON (a.network = LEFT(c.ip_dst, 7))
83
+ WHERE network LIKE '216.58.208.%'
84
+ GROUP BY b.continent_name, b.country_name
85
+ LIMIT 10;
86
+
87
+ SELECT ip_dst, network, continent_name, country_name
88
+ FROM "threatmonitor".geoipdata_ipv4blocks_country a
89
+ JOIN "threatmonitor".geoipdata_locations_country b
90
+ ON (a.geoname_id = b.geoname_id)
91
+ JOIN "threatmonitor".ippacket c
92
+ ON (a.network LIKE LEFT(c.ip_dst, 5))
93
+ WHERE network LIKE '216.58.%'
94
+ GROUP BY b.continent_name, b.country_name, a.network, c.ip_dst
95
+ LIMIT 10;
96
+
97
+ -- SELECT network FROM "threatmonitor".geoipdata_ipv4blocks_country a JOIN WHERE network LIKE '23.%' LIMIT 5;
98
+
99
+ -- PLAN SELECT LEFT(network, 8) as net, locale_code, continent_code, continent_name, country_name, country_iso_code
100
+ -- FROM "threatmonitor".geoipdata_ipv4blocks_country a
101
+ -- JOIN "threatmonitor".geoipdata_locations_country b
102
+ -- ON (a.geoname_id = b.geoname_id)
103
+ -- JOIN "threatmonitor".wifi_ippacket c
104
+ -- ON (c.ip_dst LIKE LEFT(network, 8))
105
+ -- JOIN "threatmonitor".wifi_tcppacket d
106
+ -- ON (c.guid = d.guid)
107
+ -- WHERE network LIKE '23.%'
108
+ -- GROUP BY a.network, b.locale_code, b.continent_code, b.continent_name, b.country_name, b.country_iso_code
109
+ -- LIMIT 100;
110
+
111
+
@@ -0,0 +1,174 @@
1
+
2
+ CREATE USER "threatmonitor" WITH PASSWORD 'dk3rbi9l' NAME 'Threatmonitor' SCHEMA "sys";
3
+ CREATE SCHEMA "threatmonitor" AUTHORIZATION "threatmonitor";
4
+ ALTER USER "threatmonitor" SET SCHEMA "threatmonitor";
5
+
6
+ DROP TABLE "threatmonitor".ippacket;
7
+ CREATE TABLE "threatmonitor".ippacket (
8
+ "guid" char(36) not null primary key,
9
+ "recv_date" string,
10
+ "ip_df" varchar(5),
11
+ "ip_dst" varchar(15),
12
+ "ip_hlen" int not null,
13
+ "ip_id" int not null,
14
+ "ip_len" int not null,
15
+ "ip_mf" varchar(5),
16
+ "ip_off" int not null,
17
+ "ip_proto" int not null,
18
+ "ip_src" varchar(15),
19
+ "ip_sum" char(10),
20
+ "ip_tos" int not null,
21
+ "ip_ttl" int not null,
22
+ "ip_ver" int not null
23
+ );
24
+ CREATE INDEX index_guid_defaultip ON "threatmonitor".ippacket(guid);
25
+ CREATE INDEX index_ip_dst_defaultip ON "threatmonitor".ippacket(ip_dst);
26
+ CREATE INDEX index_ip_src_defaultip ON "threatmonitor".ippacket(ip_src);
27
+
28
+ DROP TABLE "threatmonitor".tcppacket;
29
+ CREATE TABLE "threatmonitor".tcppacket (
30
+ "guid" char(36) NOT NULL primary key,
31
+ "recv_date" string,
32
+ "tcp_data_len" int DEFAULT NULL,
33
+ "tcp_dport" int DEFAULT NULL,
34
+ "tcp_ack" char(1) DEFAULT NULL,
35
+ "tcp_fin" char(1) DEFAULT NULL,
36
+ "tcp_syn" char(1)DEFAULT NULL,
37
+ "tcp_rst" char(1) DEFAULT NULL,
38
+ "tcp_psh" char(1) DEFAULT NULL,
39
+ "tcp_urg" char(1) DEFAULT NULL,
40
+ "tcp_off" int DEFAULT NULL,
41
+ "tcp_hlen" int DEFAULT NULL,
42
+ "tcp_seq" bigint DEFAULT NULL,
43
+ "tcp_sum" char(10) DEFAULT NULL,
44
+ "tcp_sport" int DEFAULT NULL,
45
+ "tcp_urp" char(10) DEFAULT NULL,
46
+ "tcp_win" int DEFAULT NULL
47
+ );
48
+ CREATE INDEX index_guid_defaulttcp ON "threatmonitor".tcppacket(guid);
49
+ CREATE INDEX index_tcp_dport_defaulttcp ON "threatmonitor".tcppacket(tcp_dport);
50
+ CREATE INDEX index_tcp_sport_defaulttcp ON "threatmonitor".tcppacket(tcp_sport);
51
+
52
+
53
+ DROP TABLE "threatmonitor".udppacket;
54
+ CREATE TABLE "threatmonitor".udppacket (
55
+ "guid" char(36) NOT NULL primary key,
56
+ "recv_date" string,
57
+ "udp_dport" int,
58
+ "udp_len" int,
59
+ "udp_sum" char(10) DEFAULT NULL,
60
+ "udp_sport" int DEFAULT NULL
61
+ );
62
+ CREATE INDEX index_guid_defaultudp ON "threatmonitor".udppacket(guid);
63
+ CREATE INDEX index_udp_dport_defaultudp ON "threatmonitor".udppacket(udp_dport);
64
+ CREATE INDEX index_udp_sport_defaultudp ON "threatmonitor".udppacket(udp_sport);
65
+
66
+ # Wifi
67
+ DROP TABLE "threatmonitor".wifi_ippacket;
68
+ CREATE TABLE "threatmonitor".wifi_ippacket (
69
+ "guid" char(36) not null primary key,
70
+ "recv_date" string,
71
+ "ip_df" varchar(5),
72
+ "ip_dst" varchar(15),
73
+ "ip_hlen" int not null,
74
+ "ip_id" int not null,
75
+ "ip_len" int not null,
76
+ "ip_mf" varchar(5),
77
+ "ip_off" int not null,
78
+ "ip_proto" int not null,
79
+ "ip_src" varchar(15),
80
+ "ip_sum" char(10),
81
+ "ip_tos" int not null,
82
+ "ip_ttl" int not null,
83
+ "ip_ver" int not null
84
+ );
85
+
86
+ CREATE INDEX index_guid_wifiip ON "threatmonitor".wifi_ippacket(guid);
87
+ CREATE INDEX index_ip_dst_wifiip ON "threatmonitor".wifi_ippacket(ip_dst);
88
+ CREATE INDEX index_ip_src_wifiip ON "threatmonitor".wifi_ippacket(ip_src);
89
+
90
+ DROP TABLE "threatmonitor".wifi_tcppacket;
91
+ CREATE TABLE "threatmonitor".wifi_tcppacket (
92
+ "guid" char(36) NOT NULL primary key,
93
+ "recv_date" string,
94
+ "tcp_data_len" int DEFAULT NULL,
95
+ "tcp_dport" int DEFAULT NULL,
96
+ "tcp_ack" char(1) DEFAULT NULL,
97
+ "tcp_fin" char(1) DEFAULT NULL,
98
+ "tcp_syn" char(1)DEFAULT NULL,
99
+ "tcp_rst" char(1) DEFAULT NULL,
100
+ "tcp_psh" char(1) DEFAULT NULL,
101
+ "tcp_urg" char(1) DEFAULT NULL,
102
+ "tcp_off" int DEFAULT NULL,
103
+ "tcp_hlen" int DEFAULT NULL,
104
+ "tcp_seq" bigint DEFAULT NULL,
105
+ "tcp_sum" char(10) DEFAULT NULL,
106
+ "tcp_sport" int DEFAULT NULL,
107
+ "tcp_urp" char(10) DEFAULT NULL,
108
+ "tcp_win" int DEFAULT NULL
109
+ );
110
+ CREATE INDEX index_guid_wifitcp ON "threatmonitor".wifi_tcppacket(guid);
111
+ CREATE INDEX index_tcp_dport_wifitcp ON "threatmonitor".wifi_tcppacket(tcp_dport);
112
+ CREATE INDEX index_tcp_sport_wifitcp ON "threatmonitor".wifi_tcppacket(tcp_sport);
113
+
114
+
115
+ DROP TABLE "threatmonitor".wifi_udppacket;
116
+ CREATE TABLE "threatmonitor".wifi_udppacket (
117
+ "guid" char(36) NOT NULL primary key,
118
+ "recv_date" string,
119
+ "udp_dport" int,
120
+ "udp_len" int,
121
+ "udp_sum" char(10) DEFAULT NULL,
122
+ "udp_sport" int DEFAULT NULL
123
+ );
124
+
125
+ CREATE INDEX index_guid_wifiudp ON "threatmonitor".wifi_udppacket(guid);
126
+ CREATE INDEX index_udp_dport_wifiudp ON "threatmonitor".wifi_udppacket(udp_dport);
127
+ CREATE INDEX index_udp_sport_wifiudp ON "threatmonitor".wifi_udppacket(udp_sport);
128
+
129
+ CREATE TABLE "threatmonitor".groups (
130
+ gid INT GENERATED ALWAYS AS
131
+ IDENTITY (
132
+ START WITH 100 INCREMENT BY 1
133
+ NO MINVALUE NO MAXVALUE
134
+ CACHE 2 CYCLE
135
+ ) primary key,
136
+ groupname varchar(100) not null
137
+ );
138
+
139
+ CREATE TABLE "threatmonitor".users (
140
+ uid INT GENERATED ALWAYS AS
141
+ IDENTITY (
142
+ START WITH 100 INCREMENT BY 1
143
+ NO MINVALUE NO MAXVALUE
144
+ CACHE 2 CYCLE
145
+ ) primary key,
146
+ username varchar(100) not null,
147
+ password varchar(512),
148
+ gid int not null,
149
+ FOREIGN KEY (gid) REFERENCES "threatmonitor".groups (gid)
150
+ );
151
+
152
+ CREATE TABLE "threatmonitor".service_definitions (
153
+ protocol char(5),
154
+ num int not null,
155
+ description char(30)
156
+ );
157
+
158
+ # Query not working due lack of aggregate function
159
+
160
+ #select "ip_dst", "tcp_sport", "tcp_dport", count("ip_dst") as num from tcppacket sel LEFT JOIN ippacket sel2 ON (sel2.guid = sel.guid) GROUP by "ip_dst";
161
+
162
+ # Service / Ports / IP
163
+ select * from wifi_ippacket a JOIN wifi_udppacket b on (a.guid = b.guid) JOIN service_definitions s on (s.num = b.udp_dport) where udp_dport > 0 and udp_dport < 10000 and s.protocol = 'UDP' group by b.udp_dport, a.ip_dst, s.description;
164
+
165
+ #COPY INTO threatmonitor.ippacket from '/tmp/ippacket.csv' USING DELIMITERS '|','\n', '"';
166
+ #COPY INTO threatmonitor.tcppacket from '/tmp/tcppacket.csv' USING DELIMITERS '|','\n', '"';
167
+ #COPY INTO threatmonitor.udppacket from '/tmp/udppacket.csv' USING DELIMITERS '|','\n', '"';
168
+
169
+ COPY INTO "threatmonitor".service_definitions FROM '/home/brian/Projects/ThreatmonitorDashboard/tcpudpportslist.csv' DELIMITERS ',';
170
+
171
+ #INSERT INTO "threatmonitor".wifi_tcppacket
172
+ #(guid, recv_date, tcp_data_len, tcp_dport, tcp_ack, tcp_fin, tcp_syn, tcp_rst, tcp_psh, tcp_urg, tcp_off, tcp_hlen, tcp_seq, tcp_sum, tcp_sport, tcp_urp, tcp_win)
173
+ #VALUES ('a6cd6b9f-53cf-a1db-f4f5-644e118394f0','2015-06-20 14:46:33 +0100', '1448','51213','N','N','N','N','N','N','8', '8', '3248172952', '55697', '80', '0', '239');
174
+
@@ -0,0 +1,156 @@
1
+
2
+ DROP TABLE IF EXISTS `ippacket`;
3
+ /*!40101 SET @saved_cs_client = @@character_set_client */;
4
+ /*!40101 SET character_set_client = utf8 */;
5
+ CREATE TABLE `ippacket` (
6
+ "guid" char(36) not null primary key,
7
+ "recv_date" string,
8
+ "ip_df" varchar(5),
9
+ "ip_dst" varchar(15),
10
+ "ip_hlen" int not null,
11
+ "ip_id" int not null,
12
+ "ip_len" int not null,
13
+ "ip_mf" varchar(5),
14
+ "ip_off" int not null,
15
+ "ip_proto" int not null,
16
+ "ip_src" varchar(15),
17
+ "ip_sum" char(10),
18
+ "ip_tos" int not null,
19
+ "ip_ttl" int not null,
20
+ "ip_ver" int not null,
21
+ PRIMARY KEY (`guid`)
22
+ ) ENGINE=INNODB DEFAULT CHARSET=latin1;
23
+
24
+ DROP TABLE IF EXISTS `tcppacket`;
25
+ /*!40101 SET @saved_cs_client = @@character_set_client */;
26
+ /*!40101 SET character_set_client = utf8 */;
27
+ CREATE TABLE `tcppacket` (
28
+ `guid` char(36) NOT NULL DEFAULT '',
29
+ `recv_date` date DEFAULT NULL,
30
+ `tcp_data` blob,
31
+ `tcp_data_len` int(10) DEFAULT NULL,
32
+ `tcp_dport` int(5) DEFAULT NULL,
33
+ `tcp_ack` enum('Y','N') DEFAULT NULL,
34
+ `tcp_fin` enum('Y','N') DEFAULT NULL,
35
+ `tcp_syn` enum('Y','N') DEFAULT NULL,
36
+ `tcp_rst` enum('Y','N') DEFAULT NULL,
37
+ `tcp_psh` enum('Y','N') DEFAULT NULL,
38
+ `tcp_urg` enum('Y','N') DEFAULT NULL,
39
+ `tcp_off` int(10) DEFAULT NULL,
40
+ `tcp_hlen` int(10) DEFAULT NULL,
41
+ `tcp_seq` bigint(10) DEFAULT NULL,
42
+ `tcp_sum` char(10) DEFAULT NULL,
43
+ `tcp_sport` int(5) DEFAULT NULL,
44
+ `tcp_urp` char(10) DEFAULT NULL,
45
+ `tcp_win` int(10) DEFAULT NULL,
46
+ PRIMARY KEY (`guid`)
47
+ ) ENGINE=INNODB DEFAULT CHARSET=latin1;
48
+ /*!40101 SET character_set_client = @saved_cs_client */;
49
+
50
+ --
51
+ -- Table structure for table `udppacket`
52
+ --
53
+
54
+ DROP TABLE IF EXISTS `udppacket`;
55
+ /*!40101 SET @saved_cs_client = @@character_set_client */;
56
+ /*!40101 SET character_set_client = utf8 */;
57
+ CREATE TABLE `udppacket` (
58
+ `guid` char(36) NOT NULL DEFAULT '',
59
+ `recv_date` date DEFAULT NULL,
60
+ `udp_data` blob,
61
+ `udp_dport` int(5) DEFAULT NULL,
62
+ `udp_len` int(10) DEFAULT NULL,
63
+ `udp_sum` char(10) DEFAULT NULL,
64
+ `udp_sport` int(5) DEFAULT NULL,
65
+ PRIMARY KEY (`guid`)
66
+ ) ENGINE=INNODB DEFAULT CHARSET=latin1;
67
+
68
+ # Wifi
69
+
70
+ DROP TABLE IF EXISTS `wifi_ippacket`;
71
+ /*!40101 SET @saved_cs_client = @@character_set_client */;
72
+ /*!40101 SET character_set_client = utf8 */;
73
+ CREATE TABLE `wifi_ippacket` (
74
+ `guid` char(36) not null default '',
75
+ `recv_date` date DEFAULT NULL,
76
+ `ip_df` varchar(5),
77
+ `ip_dst` varchar(15),
78
+ `ip_hlen` int not null,
79
+ `ip_id` int not null,
80
+ `ip_len` int not null,
81
+ `ip_mf` varchar(5),
82
+ `ip_off` int not null,
83
+ `ip_proto` int not null,
84
+ `ip_src` varchar(15),
85
+ `ip_sum` char(10),
86
+ `ip_tos` int not null,
87
+ `ip_ttl` int not null,
88
+ `ip_ver` int not null,
89
+ PRIMARY KEY (`guid`)
90
+ ) ENGINE=INNODB DEFAULT CHARSET=latin1;
91
+
92
+ DROP TABLE IF EXISTS `wifi_tcppacket`;
93
+ /*!40101 SET @saved_cs_client = @@character_set_client */;
94
+ /*!40101 SET character_set_client = utf8 */;
95
+ CREATE TABLE `wifi_tcppacket` (
96
+ `guid` char(36) NOT NULL DEFAULT '',
97
+ `recv_date` date DEFAULT NULL,
98
+ `tcp_data` blob,
99
+ `tcp_data_len` int(10) DEFAULT NULL,
100
+ `tcp_dport` int(5) DEFAULT NULL,
101
+ `tcp_ack` enum('Y','N') DEFAULT NULL,
102
+ `tcp_fin` enum('Y','N') DEFAULT NULL,
103
+ `tcp_syn` enum('Y','N') DEFAULT NULL,
104
+ `tcp_rst` enum('Y','N') DEFAULT NULL,
105
+ `tcp_psh` enum('Y','N') DEFAULT NULL,
106
+ `tcp_urg` enum('Y','N') DEFAULT NULL,
107
+ `tcp_off` int(10) DEFAULT NULL,
108
+ `tcp_hlen` int(10) DEFAULT NULL,
109
+ `tcp_seq` bigint(10) DEFAULT NULL,
110
+ `tcp_sum` char(10) DEFAULT NULL,
111
+ `tcp_sport` int(5) DEFAULT NULL,
112
+ `tcp_urp` char(10) DEFAULT NULL,
113
+ `tcp_win` int(10) DEFAULT NULL,
114
+ PRIMARY KEY (`guid`)
115
+ ) ENGINE=INNODB DEFAULT CHARSET=latin1;
116
+ /*!40101 SET character_set_client = @saved_cs_client */;
117
+
118
+ --
119
+ -- Table structure for table `udppacket`
120
+ --
121
+
122
+ DROP TABLE IF EXISTS `wifi_udppacket`;
123
+ /*!40101 SET @saved_cs_client = @@character_set_client */;
124
+ /*!40101 SET character_set_client = utf8 */;
125
+ CREATE TABLE `wifi_udppacket` (
126
+ `guid` char(36) NOT NULL DEFAULT '',
127
+ `recv_date` date DEFAULT NULL,
128
+ `udp_data` blob,
129
+ `udp_dport` int(5) DEFAULT NULL,
130
+ `udp_len` int(10) DEFAULT NULL,
131
+ `udp_sum` char(10) DEFAULT NULL,
132
+ `udp_sport` int(5) DEFAULT NULL,
133
+ PRIMARY KEY (`guid`)
134
+ ) ENGINE=INNODB DEFAULT CHARSET=latin1;
135
+
136
+
137
+ CREATE TABLE groups (
138
+ gid INT NOT NULL AUTO_INCREMENT,
139
+ groupname VARCHAR(100) NOT NULL,
140
+ PRIMARY KEY (gid)
141
+ );
142
+
143
+ CREATE TABLE users (
144
+ uid INT NOT NULL AUTO_INCREMENT,
145
+ username VARCHAR(100) NOT NULL,
146
+ password VARCHAR(512),
147
+ gid int not null,
148
+ FOREIGN KEY (gid) REFERENCES groups (gid),
149
+ PRIMARY KEY (uid)
150
+ );
151
+
152
+ -- CHANGE MASTER TO MASTER_HOST=’dev-vnc-01′,
153
+ -- MASTER_PORT=3306,
154
+ -- MASTER_USER=’orinoco’,
155
+ -- MASTER_PASSWORD=’wimbledon';
156
+
@@ -0,0 +1,150 @@
1
+ body {
2
+ background-color: black;
3
+ font-family: "Georgia", sans-serif;
4
+ font-size: 16px;
5
+ line-height: 1.6em;
6
+ #padding: 1.6em 0 0 0;
7
+ color: #333;
8
+ }
9
+
10
+ h1, h2, h3, h4, h5, h6 {
11
+ color: #444;
12
+ }
13
+
14
+ h1 {
15
+ font-family: sans-serif;
16
+ font-weight: normal;
17
+ font-size: 4em;
18
+ line-height: 0.8em;
19
+ letter-spacing: -0.1ex;
20
+ margin: 5px;
21
+ }
22
+
23
+ li {
24
+ padding: 0;
25
+ margin: 0;
26
+ list-style-type: square;
27
+ }
28
+
29
+ a {
30
+ color: #0336B4;
31
+ #font-weight: small;
32
+ font-style: bold;
33
+ font-size: 90%;
34
+ }
35
+
36
+ blockquote {
37
+ font-size: 90%;
38
+ font-style: italic;
39
+ border-left: 1px solid #111;
40
+ padding-left: 1em;
41
+ }
42
+
43
+ .caps {
44
+ font-size: 80%;
45
+ }
46
+
47
+ #main {
48
+ width: 45em;
49
+ padding: 0;
50
+ margin: 0 auto;
51
+ }
52
+
53
+ .coda {
54
+ text-align: right;
55
+ color: #77f;
56
+ font-size: smaller;
57
+ }
58
+
59
+ table {
60
+ font-size: 80%;
61
+ font-weight: bold;
62
+ line-height: 1.4em;
63
+ color: #0b6b44;
64
+ background-color: #FFFFFF;
65
+ #padding: 2px 10px 2px 10px;
66
+ #border-style: dashed;
67
+ }
68
+
69
+ th {
70
+ color: #fff;
71
+ background-color: #000
72
+ }
73
+
74
+ td {
75
+ padding: 2px 10px 2px 10px;
76
+ }
77
+
78
+ .success {
79
+ color: #0CC52B;
80
+ }
81
+
82
+ .failed {
83
+ color: #E90A1B;
84
+ }
85
+
86
+ .unknown {
87
+ color: #995000;
88
+ }
89
+
90
+ pre, code {
91
+ font-family: monospace;
92
+ font-size: 60%;
93
+ line-height: 1.4em;
94
+ color: black;
95
+ background-color: white;
96
+ padding: 2px 10px 2px 10px;
97
+ font-weight: lighter;
98
+ }
99
+
100
+ .comment { color: darkgray; font-style: italic; }
101
+ .keyword { color: darkyellow; font-weight: bold; }
102
+ .punct { color: black; font-weight: bold; }
103
+ .symbol { color: teal; }
104
+ .string { color: green; }
105
+ .ident { color: blue; }
106
+ .constant { color: darkblue; }
107
+ .regex { color: purple; }
108
+ .number { color: red; }
109
+ .expr { color: #227; }
110
+
111
+ #version {
112
+ float: right;
113
+ text-align: right;
114
+ font-family: sans-serif;
115
+ font-weight: normal;
116
+ background-color: #B3ABFF;
117
+ color: #141331;
118
+ padding: 15px 20px 10px 20px;
119
+ margin: 0 auto;
120
+ margin-top: 15px;
121
+ border: 3px solid #141331;
122
+ }
123
+
124
+ #version .numbers {
125
+ display: block;
126
+ font-size: 4em;
127
+ line-height: 0.8em;
128
+ letter-spacing: -0.1ex;
129
+ margin-bottom: 15px;
130
+ }
131
+
132
+ #version p {
133
+ text-decoration: none;
134
+ color: #141331;
135
+ background-color: #B3ABFF;
136
+ margin: 0;
137
+ padding: 0;
138
+ }
139
+
140
+ #version a {
141
+ text-decoration: none;
142
+ color: #141331;
143
+ background-color: #B3ABFF;
144
+ }
145
+
146
+ .clickable {
147
+ cursor: pointer;
148
+ cursor: hand;
149
+ }
150
+