【LoL】使用 Pidgin 登入台服 LoL 聊天伺服器,輕鬆修改狀態、等級、牌位、遊戲狀態 精英不是沒可能

早前 NitroXenon 我發現了台服的 LoL 聊天伺服器 漏洞,能任意修改別人的狀態,並刪除好友,連統神和花枝丸的好友偶被我刪掉,還被我改成木牌了,但是隔天就被G社迅速修補了有關漏洞,而且換了認證的方式。今天小N發現了能使用 Pidgin 聊天的方法~
Read more

Twitch IRC – 解究 Twitch 實況頻道聊天室的秘密

相信各位有玩過 LOL 的都應該不會不知道 Twitch 是什麼吧,Twitch 這個實況網站,發掘了不少潛在玩家,也令嘴炮玩家崛起(統神?),而且是實況主的賺零用錢工具,那你又知道多少有關聊天室的事情?


 

Twich 聊天室原理

其實 Twitch 的聊天室只是一個 IRC 的聊天頻道,而在頻道裏面就又 MOD (IRC 的 OP) 來進行BAN人等操作,所以 IRC 是十分配合 Twitch 這個網頁式實況網站。

大家有玩過 Twitch Play Pokemon 嗎? IRC 有一種很常見的機械人,而那些機械人就只是一個電腦程式,進入 Twitch 的聊天室後就負責接收聊天室的文字,然後利用讀取到的文字來進行遊戲控制~

什麼是 IRC ?

IRC(Internet Relay Chat的縮寫,「網際網路中繼聊天」)是一種通過網路的即時聊天方式。其主要用於群體聊天,但同樣也可以用於個人對個人的聊天。

芬蘭人雅爾可·歐伊卡利寧(Jarkko Oikarinen)於1988年8月創造了IRC來取代一個叫做MUT的程式。

IRC是一種公開的協定,採用TCP和SSL協定。一個IRC伺服器可以連線其他的IRC伺服器以擴充功能為一個IRC網路。IRC用戶通過客戶端軟體和伺服器相連。大多數的IRC伺服器不需要客戶註冊登入,雖然在連線前必須設定好暱稱(nickname),但客戶端一般都會自動分給一個。

IRC 架構

irc-structure

IRC伺服器

IRC是一個分布式的客戶端/伺服器結構。通過連線到一個IRC伺服器,我們可以存取這個伺服器以及它所連線的其他伺服器上的頻道。 要使用IRC,必須先登陸到一個IRC伺服器上,最常見的為irc.freenode.net。

IRC頻道

頻道存在於一個IRC伺服器上。一個頻道類似於一個聊天室,頻道名稱必須以#符號開始,例如 #irchelp。

如何透過 IRC 客戶端進入實況聊天室 ?

第一步

首先使用任意的 IRC 客戶端

在這裡我就使用 Kiwi IRC

Kiwi IRC 是一個網頁版的 IRC 客戶端

按我進入 Kiwi IRC

1

第二步

由於 Twitch 聊天室的登入密碼並不是 Twitch 的密碼

然後我們需要使用 Twitch Chat Password Generator

來產生我們的 OAuth 密碼

我們進入 Twitch Chat OAuth Password Generator 後

只需要按 Connect With Twitch

然後登入 Twitch 並授權使用即可

最後圖二中的文字框裏面的文字就是我們的聊天密碼

請複製密碼

2

3

第三步

然後回到 Kiwi IRC

並輸入以下資訊

  • 暱稱 : 你 Twitch 的帳號名稱 (全小寫)
  • 我有密碼 : 必需勾選
  • 密碼 : 貼上你剛剛複製的密碼
  • 頻道 : 這個就是實況台的 ID 例如統神的就是 asiagodtonegg3be0 ,要全小寫,頻道前要加上 # 號,所以輸入 : #asiagodtonegg3be0
  • Server : irc.twitch.tv
  • Port : 6667
  • SSL : 別勾選

4

第四步

輸入登入資訊後按 “開始"

然後就能進入聊天室咯~

右邊可以看到目前正在看實況的用戶 (不完整)

5

 

第五步

要發訊息,只需要在下面的文字框中輸入訊息

然後按 Enter 鍵即可發送

6

第六步

如果你被 BAN 了

可以在上面看到一個 jtv 的分頁在閃

按一下就能看到你是不是被 BAN 咯~

我被永久 BAN 了 XDD

7

8

第七步

另外一個有趣的功能就是

只需要切換到 Server 分頁

然後輸入 :

/join 頻道名稱(全小寫)

就可以進入其他頻道

而原本的頻道還在的喔~

9

10

 

總結

利用 IRC 客戶端來進入 Twitch 聊天室,除了能更直觀地看到目前的觀看者,還可以同時間多頻道聊天,十分實用~

下次我將會為大家介紹 :

免費網站在線 24 小時為你記錄聊天內容~

請密切留意~

馬後炮式詳談英雄聯盟、流亡黯道網軍間諜病毒在幹嘛(下集)

此篇接續上集的馬後炮式詳談英雄聯盟、流亡黯道網軍間諜病毒在幹嘛(上集)

 

早上睡醒後,經過Kenny大神的提醒<(_ _)>
先是開有毒版本的安裝包

然後可以側錄一下安裝包做的事情

接著病毒安裝包就是做一連串的檔案存取…直到這裡開始比較引起我關注

病毒安裝包生產了三個.tmp文件到Windows的tmp資料夾內分別為:tmpD07C.tmp、tmpD07D.tmp、tmpD07E.tmp

接著喚起Rundll32.exe去壓入參數,執行三個文件。command line如下:
C:\Windows\system32\Rundll32.exe “\Temp\tmpD07E.tmp", Check \病毒安裝包主程式.exe|
\Temp\tmpD07C.tmp fast|
\Temp\tmpD07D.tmp|exe|\Temp\tmpD07E.tmp
(排版需要,經過刪減)
簡單來說就是使用rundll32.exe去Run了那三份tmp內的文件(其中一個帶參數fast)

接著rundll32.exe被要求執行tmp文件後又做一連串的文件存取

接著又寫入回去tmpD07E.tmp文件(做修復?還幹嘛?不太清楚)

接著這次是寫入tmpD07C.tmp文件,並且把tmpD07C.tmp創建為進程,啟動!
所以tmpD07C.tmp被以進程的方式建立起來了

後來rundll32.exe開始回去替病毒安裝包主程式做修復動作
(修復完成後,病毒安裝包就不會再生產病毒了,會恢復成正常文件)

這時候tmpD07C.tmp開始創建datD0FA.tmp、datD0EA.tmp、datD0E9.tmp文件,並且在最底下

這時候tmpD07C.tmp又用了rundll32.exe創建進程:
C:\Windows\system32\rundll32.exe “datD0EA.tmp", sqlite3_backup_deinit \Temp\tmpD07C.tmp
大致上是把datD0EA.tmp用rundll32.exe創起進程並給予參數sqlite3_backup_deinit執行
sqlite3_backup_deinit這個Func,然後又創建進程了一次tmpD07C.tmp
(這就是每次開機後監控的途徑了)

接著寫入一些參數資料存放到fast.update

另外得知病毒的NtUserEx.dll只有在特定函數下patch

這隻dll會在的時候執行指令:rundll32 NtUserEx.dll,sqlite3_aggregate_num

也就是說,這隻dll自我啟動的方式是透過rundll32去載入NtUserEx.dll
再去呼叫Export的Func——sqlite3_aggregate_num
(也就是整支病毒開機被啟動的點就是sqlite3_aggregate_num身上。可以知道,DLL Base + Offset 0x5A050就是啟動點)

一開始可以看到這函數一被呼叫做的事情會先把自己註冊為系統服務以便長期監控系統
參考了一下這篇C++编写Windows服务程序還原了一下這段是:
RegisterServiceCtrlHandlerA(“",回調函數_10059FD0)

最後結語:
…以前可能會嫌防毒各種誤報各種弱或者UI介面難用
但是分析一隻病毒真的好累啊Otz.
先寫到這啦~之後有時間再補上逆向NtUserEx.dll內部在幹嘛

1 2