弁財天

ゴフマン「専門家を信じるのではなく、自分自身で考えて判断せよ」

#HackingTeam の /etc/LISTA.txt 解析 update4

韓国国情院職員自殺とGALILEOと神原参事官不審死。神保玲子のサイトも登場w
/etc/LISTA.txtの解析部分を切り出し。

ウィキリークスの検索結果のHTMLソースをファイルに保存し、それからwgetコマンドを生成する。
lista.pl

#!/usr/bin/perl

my $url;

while (<>) {
	if (/glyphicon-open-file/) {
		my @i = split(/href=\"/);
		my @i2 = split(/ /, $i[1]);
		$url = $i2[0];
		$url =~ s/\"$//;
		#print $url . "\n";

	}
	if (/class=\"date\"/) {
		my @items = split(/>/);
		my $d = $items[2];
		$d =~ s/<\/td//;
		$d =~ s/ /-/;
		$d =~ s/:/-/g;
		#print $d . "\n";
		$id = $url;
		$id =~ s/\/hackingteam\/emails\/emailid\///;
		$id = $d . "_" . $id;
		print "wget https://wikileaks.org$url -O lista/$id.txt\n"
	}
}

$ perl lista.pl > lista.sh

wget https://wikileaks.org/hackingteam/emails/emailid/139063 -O lista/2015-03-28-07-07-48_139063.txt
wget https://wikileaks.org/hackingteam/emails/emailid/142590 -O lista/2015-06-06-02-39-25_142590.txt
…171行。
あ、前のスクリプトちょっとバグあったなw こわいわーw
でも、トップ5には何も変わりがない。ま、いっかぁ。

email_raw.plでファイルからメール部分を切り出し。

#!/usr/bin/perl

$raw = 0;
$b1st = 1;
while(<>) {
	if (/id=\"email_raw\"/) {
		$raw = 1;
	}
	if ($raw == 1 && /<\/pre>/) {
		$raw = 0;
	}
	if ($raw == 1) {
		$line = $_;
		if ($b1st == 1) {
			$b1st = 0;
			$line =~ s/^[ ]*//g;
			if ($line == "") {
				next;
			}
		}
		$line =~ s/<div class=\"tab-pane fade\" id=\"email_raw\">//;
		$line =~ s/<pre style="white-space: pre-wrap;\">//;
		$line =~ s/^[ ]*Received/Received/;
		$line =~ s/^[ ]*Return-Path/Return-Path/;
		$line =~ s/^[ ]*Status/Status/;
		$line =~ s/&quot;/"/g;
		$line =~ s/&lt;/</g;
		$line =~ s/&gt;/>/g;
		$line =~ s/&amp;/&/g;
		$line =~ s/&nbsp;/ /g;
		print $line;
	}
}
lista2raw.sh
#!/bin/sh

for i in lista/*.txt
do
	B=`basename $i .txt`
	perl email_raw.pl ${i} >lista_raw/${B}_R
done
$ sh lista2raw.sh

切り出したファイルは
cp [ファイル名] ~/Maildir/.INBOX.Hackingteam/cur
などと~/Maildirにコピーすることで、eメールクライアントソフトで見ることができる。

ここで公開。

attendance.pl

#!/usr/bin/perl

#use utf8;

%HT_CNT;
%HT_FROM;
%HT_TO;

@DANIELs = (
"hiroki.iwai\@tohmatsu.co.jp",
"sanjay\@iwi.co.jp",
"itou-N2\@mail.dnp.co.jp",
"iwaiyas\@cs.trdi.mod.go.jp",
"kristene.newberry\@fe.navy.mil",
"raudeladan.benavides\@fe.navy.mil",
"kenichi_hirano\@mhi.co.jp",
"ohkubo\@rsdynamics.co.jp",
"takeshi.ohmori\@hp.com",
"marlonsapla\@yahoo.com",
"resear-inf-fsh\@inet.gsdf.mod.go.jp",
"baedaldns\@gmail.com",
"okada54101\@gmail.com",
"yukiszme\@gmail.com",
"katsumiiwai\@gmail.com",
"yogi\@nri-secure.co.jp",
"k-okutsu\@az.jp.nec.com",
"itabashi\@cpp-japan.org",
"terzo.cid.capstoneso4\@smd.difesa.it",
"giacomo.mazzini\@exposte.it",
"bjoern.mueller\@vodafone.de",
"bellahsenotmane\@gmail.com",
);

sub check_daniels {
	my ($line) = @_;
	my $rc = 0;
	foreach my $seecat (@DANIELs) {
		if ($line =~ /$seecat/) {
			#print "DANIELs $line $seecat ...\n";
			$rc = 1;
		}
	}
	$rc;
}

while (<>) {
	my $fn = $ARGV;
	$fn =~ s/lista_raw\///;
	#print "$fn ...\n";
	if (/\.jp$/ || &check_daniels($_) == 1 ) {
		chomp;
		my $m = $_;
		$m =~ s/ //g;
		if (defined($HT_FROM{$m})) {
			$HT_TO{$m} = $fn;
			$HT_CNT{$m}++;
		}
		else {
			$HT_FROM{$m} = $fn;
			$HT_TO{$m} = $fn;
			$HT_CNT{$m} = 1;
		}
	}
}

foreach $key (keys %HT_CNT) {
	my $from = &fn2date($HT_FROM{$key});
	my $to = &fn2date($HT_TO{$key});
	print "<tr><td> $HT_CNT{$key} </td><td>$key</td><td>$from</td><td>$to</td></tr>\n";
}

sub fn2date {
	my ($fn) = @_;
	$fn =~ s/.txt//;
	@i3 = split(/-/, $fn);
	$dz = sprintf("%04d年%02d月%02d日<br /\>%02d時%02d分%02d秒", @i3);
	$dz;
}
まぁ、集計方法でいろいろ議論があるだろうけど、 どんな傾向でGALILEOに参加してるのを調べるならこんなもんだろ。 ダニエルのリストもチェック対象に追加。 結局海自以外は全員最初から参加してたのかと思ってたら違いますな。 出現回数の多いトップ5が日本のGALILEOリーダですな。それ以外は新参者かも。

$ perl attendance.pl lista_raw/*|sort -k 2 -nr

68 ueda-tatsuo@mhlw.go.jp2013年09月19日
03時02分50秒
2015年06月27日
04時38分45秒
68 tatsunobu.aoki@mofa.go.jp2013年09月19日
03時02分50秒
2015年06月27日
04時38分45秒
68 kimurahto@nttdata.co.jp2013年09月19日
03時02分50秒
2015年06月27日
04時38分45秒
68 kenji.arima@mofa.go.jp2013年09月19日
03時02分50秒
2015年06月27日
04時38分45秒
68 hyamaguchi09@npa.go.jp2013年09月19日
03時02分50秒
2015年06月27日
04時38分45秒
58 yukiszme@gmail.com2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
58 resear-inf-fsh@inet.gsdf.mod.go.jp2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
58 raudeladan.benavides@fe.navy.mil2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
58 okada54101@gmail.com2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
58 marlonsapla@yahoo.com2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
58 kristene.newberry@fe.navy.mil2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
58 katsumiiwai@gmail.com2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
58 iwaiyas@cs.trdi.mod.go.jp2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 yogi@nri-secure.co.jp2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 takeshi.ohmori@hp.com2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 sanjay@iwi.co.jp2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 ohkubo@rsdynamics.co.jp2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 kenichi_hirano@mhi.co.jp2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 k-okutsu@az.jp.nec.com2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 itou-N2@mail.dnp.co.jp2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 itabashi@cpp-japan.org2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 hiroki.iwai@tohmatsu.co.jp2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 giacomo.mazzini@exposte.it2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 bjoern.mueller@vodafone.de2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 bellahsenotmane@gmail.com2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
30 baedaldns@gmail.com2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
29 terzo.cid.capstoneso4@smd.difesa.it2014年11月02日
03時46分40秒
2015年06月27日
04時38分45秒
19 ya57342@gc5.so-net.ne.jp2014年11月02日
03時46分40秒
2015年03月14日
03時51分18秒
2 #s629.h86.a618.m68@docomo.ne.jp2014年11月02日
03時46分40秒
2014年11月08日
06時03分13秒
1 #terzo.cid.capstoneso4@smd.difesa.it2015年01月18日
04時02分21秒
2015年01月18日
04時02分21秒

板橋功@公共政策調査会・板橋功第1研究室長に切り出し。

投稿されたコメント:

コメント
コメントは無効になっています。