前言:o泡果奶的聲音火了,最近很多小伙伴不小心在手機中下載了叫做“一份禮物”的apk檔案,安裝了檔案之后就會發出不可描述的聲音,那么這是怎么回事呢?和小編一起來看看吧,

分析
是一款語音惡搞軟體,下載后會生成apk軟體,打開后會以最大音量播放O泡果奶語音,而且打開這個軟體后,你關機或者想要調小手機音量是沒用的,回傳鍵是被劫持的,大家可以找到手機任務管理器,在人物管理器找到關掉它或者強制重啟就可以了,

傳播病毒程式是違反法律的,好在這個軟體還沒什么惡意,只是一個惡搞, 不該裝的apk不能裝,未知來源如果不是必須打開,就得關上,
在反編譯的代碼里面
-- main.lua --require("import")import("android.app.*")
import("android.os.*")import("android.widget.*")
import("android.view.*")
import("android.view.View")import("android.content.Context")import("android.media.MediaPlayer")
import("android.media.AudioManager")-- 音量控制模塊import("com.androlua.Ticker")-- Ticker:定時觸發器activity.getSystemService(Context.AUDIO_SERVICE).setStreamVolume(AudioManager.STREAM_MUSIC,15,AudioManager.FLAG_SHOW_UI)--音量調大activity.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION|View.SYSTEM_UI_FLAG_IMMERSIVE)m=MediaPlayer()--播放器m.reset()m.setDataSource(activity.getLuaDir().."/mc.mp3")-- 參考包里的“O泡果奶”
m.prepare()m.start()m.setLooping(true)ti=Ticker()--計時器計時觸發ti.Period=10-- 間隔為10msfunctionti.onTick()-- 設定ticker要觸發的函式activity.getSystemService(Context.AUDIO_SERVICE).setStreamVolume(AudioManager.STREAM_MUSIC,15,AudioManager.FLAG_SHOW_UI)-- 和上面一模一樣activity.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION|View.SYSTEM_UI_FLAG_IMMERSIVE)-- 隱藏navbar等
endti.start()-- 開啟ticker,每10ms執行一次上面的函式functiononKeyDown(A0_0,A1_1)-- 監聽按鍵,不呼叫外部方法的話就相當于劫持下來了ifstring.find(tostring(A1_1),"KEYCODE_BACK")~=nilthen-- 如果按鍵是回傳鍵activity.getSystemService(Context.AUDIO_SERVICE).setStreamVolume(AudioManager.STREAM_MUSIC,15,AudioManager.FLAG_SHOW_UI)-- 設定音量為最大end-- 相當于把回傳鍵變成了音量最大鍵returntrueend

總共34行,除去開頭一大堆import,差不多就20行左右,
所以這個檔案看上去就是去年不可描述聲音軟體的改版,安全方面并沒有太大的威脅,并且作者還留下了人性化的可關閉方法,不過還是避免不了"社會性死亡"的最終命運,
點擊了解更多資料,更有免費開源專案和課程等你觀看哦!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/177375.html
標籤:其他
