最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

AutoIt腳本的反編譯和代碼格式化問題分析

 更新時(shí)間:2015年10月19日 12:53:41   投稿:mdxy-dxy  
這篇文章主要介紹了AutoIt腳本的反編譯和代碼格式化問題分析,需要的朋友可以參考下

最近集中冒出一波AutoIt的惡意腳本來,也就多看了幾個(gè)這類的樣本。AutoIt腳本是以“.au3”為擴(kuò)展名的明文腳本,但病毒作者自然不會(huì)把明文的腳本放出來。所以自然用到了AutoIt自帶的這個(gè)Au2Exe的工具:

可以看到AutoIt允許用戶將au3的明文腳本編譯成exe文件或者a3x文件。exe文件自不必贅述,就是我們平時(shí)熟悉的PE文件,但如果編譯成exe文件,則失去了AutoIt腳本在惡意程序領(lǐng)域的優(yōu)勢(shì)(懂的自然懂,不細(xì)說),所以目前捕獲的大多數(shù)惡意樣本都是將腳本編譯成a3x文件。


網(wǎng)上比較多的是Exe2Au3的反編譯工具(據(jù)說早期版本的AutoIt是自帶這個(gè)工具的,后來不帶了),但下了幾個(gè),都很耿直——真的都只能反編譯Exe文件,而對(duì)a3x文件表示無力。最后才找到了一個(gè)叫做Autoit3 Decompiler GUI的工具(http://www.fzitv.net/softs/390596.html):

用這個(gè)工具,就能很簡(jiǎn)單的將a3x文件反編譯成au3的明文腳本了。BUT——為什么萬事總有個(gè)BUT——反編譯出來的腳本看著有些憂?!?/p>

就這代碼格式……幾十行還可以忍,一兩百行已經(jīng)是上限了……惡意代碼動(dòng)不動(dòng)幾千行,看著腦袋都大啊……本著磨刀不誤砍柴工的思想,果斷寫了一個(gè)自動(dòng)格式化腳本(by Python),貼出來和大家分享下。

說明:對(duì)AutoIt了解不多,僅針對(duì)我目前見過的腳本,做一個(gè)比較粗陋而暴力的格式化工作而已

#!/usr/bin/env python2.7
#-*- coding: utf-8 -*-
 
_AU3 = ';./sample.au3';
_AU3_OUT = ';./format.au3';
_INDENT = '; '; * 4
 
def au3formater(line, indent):
  line = line.strip().lower()
  
  next_indent = indent
  if (line.startswith(';end';) or
    line.startswith(';until';) or 
    line in (';next';, ';wend';)):
    indent -= 1
    next_indent -= 1
  elif line.startswith(';if';) and line.endswith(';then';):
    next_indent += 1
  elif (line.startswith(';func';) or 
     line.startswith(';for';) or 
     line.startswith(';select';) or
     line.startswith(';switch';) or
     line.startswith(';while';) or
     line == ';do';):
    next_indent += 1
  elif line.startswith(';else';) or line.startswith(';case';):
    indent -= 1
  new_line = _INDENT * indent + line
  
  return new_line, next_indent
 
def main():
  with open(_AU3, ';r';) as fp:
    with open(_AU3_OUT, ';w';) as fpw:
      indent = 0
      line = fp.readline()
      while line:
        new_line, indent = au3formater(line, indent)
        fpw.write(';%s\n'; % new_line)
        line = fp.readline()
 
if __name__ == ';__main__';:
  main()

格式化完成后,看著就舒服多了(不確定是否是我個(gè)人的強(qiáng)迫癥而已……):

當(dāng)然,即便是看著舒服些了,即便是明文腳本,幾千行的代碼看著也是很憂桑的

相關(guān)文章

  • 飛信的CMD命令行接口批量發(fā)送信息

    飛信的CMD命令行接口批量發(fā)送信息

    最近在用AU3開發(fā)一款用來調(diào)用飛信發(fā)送短信的小東東 飛信是個(gè)很好的東西,可惜用的人少,很多不厚道的同學(xué)注冊(cè)之后就不再登錄了.
    2008-09-09
  • AutoIt腳本的反編譯和代碼格式化問題分析

    AutoIt腳本的反編譯和代碼格式化問題分析

    這篇文章主要介紹了AutoIt腳本的反編譯和代碼格式化問題分析,需要的朋友可以參考下
    2015-10-10
  • autoit InputBox 函數(shù)

    autoit InputBox 函數(shù)

    顯示以一個(gè)輸入框以供用戶輸入數(shù)據(jù)。InputBox ( "標(biāo)題", "提示信息" [, "默認(rèn)數(shù)據(jù)" [, "密碼字符" [, 寬度, 高度 [, 左邊, 上邊 [, 超時(shí)時(shí)間]]]]] )
    2008-06-06
  • Aut2Exe編譯au3腳本為可執(zhí)行文件

    Aut2Exe編譯au3腳本為可執(zhí)行文件

    把AutoIt的.au3腳本文件編譯成可獨(dú)立運(yùn)行的程序當(dāng)然是可實(shí)現(xiàn)的,這樣就可以使得編譯后的程序得以在沒有安裝AutoIt(或者說沒有AutoIt3.exe這個(gè)解釋程序)的機(jī)器上運(yùn)行。
    2008-06-06
  • Au3截取騰訊天氣的腳本

    Au3截取騰訊天氣的腳本

    騰訊的天氣是相當(dāng)?shù)臏?zhǔn)呀.而且還有實(shí)時(shí)天氣, 今天把它給應(yīng)用上了,附上源代碼拋磚引玉.
    2008-09-09
  • autoit自定義函數(shù)

    autoit自定義函數(shù)

    所謂函數(shù)是指可在腳本中調(diào)用并實(shí)現(xiàn)特定“功能”的代碼片段。在 AutoIt 中有兩種函數(shù),包括 內(nèi)建函數(shù) 和 自定義函數(shù)。
    2008-06-06
  • 獲取外網(wǎng)IP并發(fā)送到指定的郵箱的腳本

    獲取外網(wǎng)IP并發(fā)送到指定的郵箱的腳本

    來自小A的源碼,其實(shí)用到的全部是AU3自帶的UDF,非常有學(xué)習(xí)的意義!功能:獲取外網(wǎng)IP并將IP發(fā)送到配置文件中定義的郵箱
    2012-05-05
  • QQ向陌生人聊天的autoit腳本

    QQ向陌生人聊天的autoit腳本

    直接輸入對(duì)方的qq號(hào)即可和對(duì)方交談的autoit腳本,沒什么技術(shù)含量,就是需要掌握下autoit的相關(guān)知識(shí)
    2008-06-06
  • autoit3最新漢化版下載

    autoit3最新漢化版下載

    想運(yùn)行.au3的朋友必備,因這個(gè)東西,確實(shí)不錯(cuò),我們提出程序的最低版本都基本是autoit3
    2008-06-06
  • AutoIt3和按鍵精靈的功能對(duì)比

    AutoIt3和按鍵精靈的功能對(duì)比

    AutoIt3和按鍵精靈的比較 無其他的意思,剛看到,順手轉(zhuǎn)了過來,給想學(xué)AUtoIT的同志看看,以下是國(guó)內(nèi)(AutoIT )二位高手的評(píng)價(jià)(本論壇高手也多,只是一直默默無聞,象幾位版主
    2008-06-06

最新評(píng)論

怀宁县| 曲靖市| 元阳县| 晋中市| 石楼县| 西乌珠穆沁旗| 凤凰县| 林口县| 扶绥县| 双城市| 石阡县| 南投县| 五大连池市| 额尔古纳市| 东乡县| 寻乌县| 金乡县| 泸定县| 肥城市| 广宗县| 安国市| 南汇区| 建平县| 拉孜县| 瑞丽市| 台南县| 大悟县| 邳州市| 叙永县| 太和县| 赫章县| 焦作市| 鄂托克前旗| 乌什县| 讷河市| 珠海市| 乃东县| 渑池县| 柳州市| 大洼县| 建宁县|