WireShark 分析鼠標(biāo)鍵盤包

使用wireshark自帶的tshark命令行工具捣郊,可以將 leftover capture data單獨(dú)提取出來,具體命令為:
tshark.exe -r usb1.pcap -T fields -e usb.capdata > usbdata.txt
然后我們需要編寫腳本從得出的userdata.txt文件中過濾出鍵盤擊鍵相關(guān)的流量,并根據(jù)上述映射表脚粟,將鍵盤按鍵按照對應(yīng)關(guān)系輸出出來淡诗,這里附上簡要的腳本:
mappings = { 0x04:"A", 0x05:"B", 0x06:"C", 0x07:"D", 0x08:"E", 0x09:"F", 0x0A:"G", 0x0B:"H", 0x0C:"I", 0x0D:"J", 0x0E:"K", 0x0F:"L", 0x10:"M", 0x11:"N",0x12:"O", 0x13:"P", 0x14:"Q", 0x15:"R", 0x16:"S", 0x17:"T", 0x18:"U",0x19:"V", 0x1A:"W", 0x1B:"X", 0x1C:"Y", 0x1D:"Z", 0x1E:"1", 0x1F:"2", 0x20:"3", 0x21:"4", 0x22:"5", 0x23:"6", 0x24:"7", 0x25:"8", 0x26:"9", 0x27:"0", 0x28:"\n", 0x2a:"[DEL]", 0X2B:" ", 0x2C:" ", 0x2D:"-", 0x2E:"=", 0x2F:"[", 0x30:"]", 0x31:"\", 0x32:"~", 0x33:";", 0x34:"'", 0x36:",", 0x37:"." }
nums = []
keys = open('usbdata.txt')
for line in keys:
if line[0]!='0' or line[1]!='0' or line[3]!='0' or line[4]!='0' or line[9]!='0' or line[10]!='0' or line[12]!='0' or line[13]!='0' or line[15]!='0' or line[16]!='0' or line[18]!='0' or line[19]!='0' or line[21]!='0' or line[22]!='0':
continue
nums.append(int(line[6:8],16))
keys.close()
output = ""
for n in nums:
if n == 0 :
continue
if n in mappings:
output += mappings[n]
else:
output += '[unknown]'
print 'output :\n' + output

首先同樣使用tshark 命令將cap data提取出來:
tshark.exe -r usb2.pcap -T fields -e usb.capdata > usbdata.txt

Image.png

每一個數(shù)據(jù)包的數(shù)據(jù)區(qū)有四個字節(jié)骇塘,第一個字節(jié)代表按鍵,當(dāng)取0x00時(shí)韩容,代表沒有按鍵款违、為0x01時(shí),代表按左鍵群凶,為0x02時(shí)插爹,代表當(dāng)前按鍵為右鍵。第二個字節(jié)可以看成是一個signed byte類型请梢,其最高位為符號位赠尾,當(dāng)這個值為正時(shí),代表鼠標(biāo)水平右移多少像素毅弧,為負(fù)時(shí)气嫁,代表水平左移多少像素。第三個字節(jié)與第二字節(jié)類似够坐,代表垂直上下移動的偏移寸宵。
了解協(xié)議相關(guān)約定之后,可編寫腳本將數(shù)據(jù)包的內(nèi)容變成一系列點(diǎn)的集合咆霜,為了區(qū)分左右按鍵邓馒,可以特意對第一個字節(jié)的內(nèi)容作一下判斷。相關(guān)腳本如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

nums = []
keys = open('data.txt','r')
posx = 0
posy = 0
for line in keys:
if len(line) != 12 :
continue
x = int(line[3:5],16)
y = int(line[6:8],16)
if x > 127 :
x -= 256
if y > 127 :
y -= 256
posx += x
posy += y
btn_flag = int(line[0:2],16) # 1 for left , 2 for right , 0 for nothing
if btn_flag == 1 :
print posx , posy
keys.close()

本題的flag藏在右鍵信息中蛾坯,當(dāng)btn_flag 取2時(shí)光酣,運(yùn)行腳本可以得到一系列坐標(biāo)點(diǎn):
[圖片上傳中。脉课。救军。(2)]
得到這些點(diǎn)之后财异,需要將他們畫出來,因而需要輔以gnuplot 或者其他的繪圖工具唱遭,gnuplot的命令為"plot inputfile"戳寸,運(yùn)行如下:
[圖片上傳中。拷泽。疫鹊。(3)]
最后得到本題的flag: XNUCA{USBPCAPGETEVERYTHING}
[圖片上傳中。司致。拆吆。(4)]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市脂矫,隨后出現(xiàn)的幾起案子枣耀,更是在濱河造成了極大的恐慌,老刑警劉巖庭再,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件捞奕,死亡現(xiàn)場離奇詭異,居然都是意外死亡拄轻,警方通過查閱死者的電腦和手機(jī)颅围,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來哺眯,“玉大人谷浅,你說我怎么就攤上這事∧套浚” “怎么了一疯?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長夺姑。 經(jīng)常有香客問我墩邀,道長,這世上最難降的妖魔是什么盏浙? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任眉睹,我火速辦了婚禮,結(jié)果婚禮上废膘,老公的妹妹穿的比我還像新娘竹海。我一直安慰自己,他們只是感情好丐黄,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布斋配。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪艰争。 梳的紋絲不亂的頭發(fā)上坏瞄,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天,我揣著相機(jī)與錄音甩卓,去河邊找鬼鸠匀。 笑死,一個胖子當(dāng)著我的面吹牛逾柿,可吹牛的內(nèi)容都是我干的缀棍。 我是一名探鬼主播,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼机错,長吁一口氣:“原來是場噩夢啊……” “哼睦柴!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起毡熏,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎侣诵,沒想到半個月后痢法,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡杜顺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年财搁,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片躬络。...
    茶點(diǎn)故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡尖奔,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出穷当,到底是詐尸還是另有隱情提茁,我是刑警寧澤,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布馁菜,位于F島的核電站茴扁,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏汪疮。R本人自食惡果不足惜峭火,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望智嚷。 院中可真熱鬧卖丸,春花似錦、人聲如沸盏道。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至粹湃,卻和暖如春恐仑,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背为鳄。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工裳仆, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人孤钦。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓歧斟,卻偏偏與公主長得像,于是被迫代替她去往敵國和親偏形。 傳聞我的和親對象是個殘疾皇子静袖,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容