Showing
11 changed files
with
260 additions
and
0 deletions
This diff could not be displayed because it is too large.
... | @@ -2466,6 +2466,11 @@ | ... | @@ -2466,6 +2466,11 @@ |
2466 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", | 2466 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", |
2467 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" | 2467 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" |
2468 | }, | 2468 | }, |
2469 | + "python-shell": { | ||
2470 | + "version": "2.0.1", | ||
2471 | + "resolved": "https://registry.npmjs.org/python-shell/-/python-shell-2.0.1.tgz", | ||
2472 | + "integrity": "sha512-Ys+SiCinY9JrldIJxGWd2AMQSQZLU7PFzrCWY7HTawZ73tIthFdlLLU1Y6Y40Hwdutc+TmfMe5TXNU73s07Xyg==" | ||
2473 | + }, | ||
2469 | "qs": { | 2474 | "qs": { |
2470 | "version": "6.5.2", | 2475 | "version": "6.5.2", |
2471 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", | 2476 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", | ... | ... |
source/forensic_tool/src/analysis_calllog.py
0 → 100644
1 | +import base64 | ||
2 | +import sys | ||
3 | +import pymysql | ||
4 | + | ||
5 | +from konlpy.tag import Kkma | ||
6 | + | ||
7 | +conn=pymysql.connect(host='localhost',user='root',password='1234', db='dataextraction', charset='utf8') | ||
8 | + | ||
9 | +def select(): | ||
10 | + curs=conn.cursor() | ||
11 | + #sql="select * from calllog" | ||
12 | + #sql="select * from contact" | ||
13 | + sql="select * from sms" | ||
14 | + curs.execute(sql) | ||
15 | + | ||
16 | + rows=curs.fetchall() | ||
17 | + print(rows[0]) | ||
18 | + #for row in rows: | ||
19 | + #analysis_keyword(row[0]) | ||
20 | + | ||
21 | +def analysis_keyword(text): | ||
22 | + kkma = Kkma() | ||
23 | + result = kkma.nouns(text) | ||
24 | + result = str(result) | ||
25 | + print(base64.b64encode(result.encode('utf-8'))) | ||
26 | + | ||
27 | +select() | ||
28 | + | ||
29 | +conn.close() | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
source/forensic_tool/src/analysis_message.py
0 → 100644
1 | +import base64 | ||
2 | +import sys | ||
3 | +import pymysql | ||
4 | + | ||
5 | +from konlpy.tag import Twitter | ||
6 | + | ||
7 | +conn=pymysql.connect(host='localhost',user='root',password='1234', db='dataextraction', charset='utf8') | ||
8 | + | ||
9 | +def select(): | ||
10 | + curs=conn.cursor() | ||
11 | + sql="select sms.type, sms.address, sms.date, sms.body, contact.name from sms left join contact on sms.address=contact.number;" | ||
12 | + curs.execute(sql) | ||
13 | + | ||
14 | + rows=curs.fetchall() | ||
15 | + for row in rows: | ||
16 | + return_data=" " | ||
17 | + if row[0]==1: | ||
18 | + return_data+="get|" | ||
19 | + else: | ||
20 | + return_data+="send|" | ||
21 | + if row[4] is None: | ||
22 | + return_data+=row[1]+" ( - )|" | ||
23 | + else: | ||
24 | + return_data+=row[1]+" ("+row[4]+")|" | ||
25 | + return_data+=row[2].strftime("%Y-%m-%d %H:%M:%S")+"|" | ||
26 | + return_data+=row[3]+"|" | ||
27 | + analysis_keyword(return_data, row[3]) | ||
28 | + | ||
29 | +def analysis_keyword(return_data, text): | ||
30 | + twitter = Twitter() | ||
31 | + result = twitter.nouns(text) | ||
32 | + result=" ".join(str(x) for x in result) | ||
33 | + result=return_data+result | ||
34 | + print(base64.b64encode(result.encode('utf-8'))) | ||
35 | + | ||
36 | +select() | ||
37 | + | ||
38 | +conn.close() | ||
39 | + |
1 | +import base64 | ||
2 | +import sys | ||
3 | +import pymysql | ||
4 | + | ||
5 | +conn=pymysql.connect(host='localhost',user='root',password='1234', db='dataextraction', charset='utf8') | ||
6 | + | ||
7 | +def select(): | ||
8 | + curs=conn.cursor() | ||
9 | + sql="drop table if exists sms_bank;" | ||
10 | + curs.execute(sql) | ||
11 | + sql="create table sms_bank(date datetime not null, bname text, price int, paymentplan text, sname text, primary key (date));" | ||
12 | + curs.execute(sql) | ||
13 | + sql="select body,date from sms where address in (15881600,16445330,15888900,15881688);" | ||
14 | + curs.execute(sql) | ||
15 | + | ||
16 | + rows=curs.fetchall() | ||
17 | + for row in rows: | ||
18 | + body=row[0].replace("<재난지원금 사용>\n","").replace("누적",":") | ||
19 | + body=" ".join(body.split("\n")) | ||
20 | + body_split=body.split(' ') | ||
21 | + _bname=body_split[1][:-2] | ||
22 | + _price=body_split[3][:-1].replace(",","") | ||
23 | + _paymentplan=body_split[4] | ||
24 | + _date=row[1].strftime("%Y-%m-%d %H:%M:%S") | ||
25 | + _sname=' '.join(body_split[7:]) | ||
26 | + _sname=_sname.split(":")[0] | ||
27 | + curs2=conn.cursor() | ||
28 | + sql2="insert into sms_bank(bname, price, paymentplan, date, sname) values (%s, %s, %s, %s, %s);" | ||
29 | + curs2.execute(sql2, (_bname, _price, _paymentplan, _date, _sname)) | ||
30 | + conn.commit() | ||
31 | + #print(base64.b64encode("Conplete".encode('utf-8'))) | ||
32 | + | ||
33 | +select() | ||
34 | + | ||
35 | +conn.close() | ||
36 | + |
1 | +import base64 | ||
2 | +import sys | ||
3 | +import pymysql | ||
4 | + | ||
5 | +from konlpy.tag import Twitter | ||
6 | +from collections import Counter | ||
7 | + | ||
8 | +conn=pymysql.connect(host='localhost',user='root',password='1234', db='dataextraction', charset='utf8') | ||
9 | + | ||
10 | +def select(): | ||
11 | + curs=conn.cursor() | ||
12 | + sql="select sms.type, sms.address, sms.date, sms.body, contact.name from sms left join contact on sms.address=contact.number;" | ||
13 | + curs.execute(sql) | ||
14 | + | ||
15 | + rows=curs.fetchall() | ||
16 | + data="" | ||
17 | + for row in rows: | ||
18 | + data+=row[3] | ||
19 | + | ||
20 | + analysis_keyword(data) | ||
21 | + | ||
22 | +def analysis_keyword(text): | ||
23 | + twitter = Twitter() | ||
24 | + result = twitter.nouns(text) | ||
25 | + count=Counter(result) | ||
26 | + tag_count=[] | ||
27 | + | ||
28 | + for n, c in count.most_common(20): | ||
29 | + dics={'tag':n, 'count':c} | ||
30 | + tag_count.append(dics) | ||
31 | + for tag in tag_count: | ||
32 | + return_data=tag['tag']+"|"+str(tag['count']) | ||
33 | + print(base64.b64encode(return_data.encode('utf-8'))) | ||
34 | + | ||
35 | +select() | ||
36 | + | ||
37 | +conn.close() | ||
38 | + |
1 | +import base64 | ||
2 | +import sys | ||
3 | +import pymysql | ||
4 | + | ||
5 | +from konlpy.tag import Twitter | ||
6 | +from collections import Counter | ||
7 | + | ||
8 | +conn=pymysql.connect(host='localhost',user='root',password='1234', db='dataextraction', charset='utf8') | ||
9 | + | ||
10 | +def select(): | ||
11 | + curs=conn.cursor() | ||
12 | + sql="select sms.type, sms.address, sms.date, sms.body, contact.name from sms left join contact on sms.address=contact.number where date between '"+sys.argv[1]+"' and '"+sys.argv[2]+"';" | ||
13 | + curs.execute(sql) | ||
14 | + | ||
15 | + rows=curs.fetchall() | ||
16 | + data="" | ||
17 | + for row in rows: | ||
18 | + data+=row[3] | ||
19 | + | ||
20 | + analysis_keyword(data) | ||
21 | + | ||
22 | +def analysis_keyword(text): | ||
23 | + twitter = Twitter() | ||
24 | + result = twitter.nouns(text) | ||
25 | + count=Counter(result) | ||
26 | + tag_count=[] | ||
27 | + | ||
28 | + for n, c in count.most_common(20): | ||
29 | + dics={'tag':n, 'count':c} | ||
30 | + tag_count.append(dics) | ||
31 | + for tag in tag_count: | ||
32 | + return_data=tag['tag']+"|"+str(tag['count']) | ||
33 | + print(base64.b64encode(return_data.encode('utf-8'))) | ||
34 | + | ||
35 | +select() | ||
36 | + | ||
37 | +conn.close() | ||
38 | + |
1 | +import base64 | ||
2 | +import sys | ||
3 | +import pymysql | ||
4 | + | ||
5 | +from konlpy.tag import Twitter | ||
6 | +from collections import Counter | ||
7 | + | ||
8 | +conn=pymysql.connect(host='localhost',user='root',password='1234', db='dataextraction', charset='utf8') | ||
9 | + | ||
10 | +def select(): | ||
11 | + curs=conn.cursor() | ||
12 | + sql="select sms.type, sms.address, sms.date, sms.body, contact.name from sms left join contact on sms.address=contact.number where timestampdiff(month,now(),sms.date)>-1;" | ||
13 | + curs.execute(sql) | ||
14 | + | ||
15 | + rows=curs.fetchall() | ||
16 | + data="" | ||
17 | + for row in rows: | ||
18 | + data+=row[3] | ||
19 | + | ||
20 | + analysis_keyword(data) | ||
21 | + | ||
22 | +def analysis_keyword(text): | ||
23 | + twitter = Twitter() | ||
24 | + result = twitter.nouns(text) | ||
25 | + count=Counter(result) | ||
26 | + tag_count=[] | ||
27 | + | ||
28 | + for n, c in count.most_common(20): | ||
29 | + dics={'tag':n, 'count':c} | ||
30 | + tag_count.append(dics) | ||
31 | + for tag in tag_count: | ||
32 | + return_data=tag['tag']+"|"+str(tag['count']) | ||
33 | + print(base64.b64encode(return_data.encode('utf-8'))) | ||
34 | + | ||
35 | +select() | ||
36 | + | ||
37 | +conn.close() | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | +import base64 | ||
2 | +import sys | ||
3 | +import pymysql | ||
4 | + | ||
5 | +from konlpy.tag import Twitter | ||
6 | +from collections import Counter | ||
7 | + | ||
8 | +conn=pymysql.connect(host='localhost',user='root',password='1234', db='dataextraction', charset='utf8') | ||
9 | + | ||
10 | +def select(): | ||
11 | + curs=conn.cursor() | ||
12 | + sql="select sms.type, sms.address, sms.date, sms.body, contact.name from sms left join contact on sms.address=contact.number where address in ("+sys.argv[1]+");" | ||
13 | + curs.execute(sql) | ||
14 | + | ||
15 | + rows=curs.fetchall() | ||
16 | + data="" | ||
17 | + for row in rows: | ||
18 | + data+=row[3] | ||
19 | + | ||
20 | + analysis_keyword(data) | ||
21 | + | ||
22 | +def analysis_keyword(text): | ||
23 | + twitter = Twitter() | ||
24 | + result = twitter.nouns(text) | ||
25 | + count=Counter(result) | ||
26 | + tag_count=[] | ||
27 | + | ||
28 | + for n, c in count.most_common(20): | ||
29 | + dics={'tag':n, 'count':c} | ||
30 | + tag_count.append(dics) | ||
31 | + for tag in tag_count: | ||
32 | + return_data=tag['tag']+"|"+str(tag['count']) | ||
33 | + print(base64.b64encode(return_data.encode('utf-8'))) | ||
34 | + | ||
35 | +select() | ||
36 | + | ||
37 | +conn.close() | ||
38 | + |
source/forensic_tool/src/menu2.html
0 → 100644
This diff is collapsed. Click to expand it.
source/forensic_tool/src/menu2.js
0 → 100644
This diff is collapsed. Click to expand it.
-
Please register or login to post a comment