V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
qinrui
V2EX  ›  程序员

计算机病毒能不能像生物病毒一样自主变异?

  •  
  •   qinrui · 2022-11-30 17:53:32 +08:00 via iPhone · 7358 次点击
    这是一个创建于 729 天前的主题,其中的信息可能已经有所发展或是发生改变。
    64 条回复    2022-12-01 22:01:59 +08:00
    None123
        1
    None123  
       2022-11-30 18:01:21 +08:00
    现在来看不现实 以后不知道
    Mulch1406
        2
    Mulch1406  
       2022-11-30 18:01:41 +08:00
    我的理解是目前不能
    病毒变异主要原因是复制转录的时候出错,且没有校验才变异的
    代码要是复制不完全可能运行都会出错

    以后说不准
    要是出现 AI 病毒就不一定了
    cmdOptionKana
        3
    cmdOptionKana  
       2022-11-30 18:03:23 +08:00   ❤️ 3
    电脑病毒变异的意义不大,因为现在很多软件都要经过审核才能上架,传播途径可控。
    opengps
        4
    opengps  
       2022-11-30 18:06:08 +08:00   ❤️ 1
    其实 ai 就是病毒,你们还没发现……
    dlsflh
        5
    dlsflh  
       2022-11-30 18:06:31 +08:00 via Android   ❤️ 1
    计算机不是很久以前就出现过仿生的算法吗?比如遗传算法,模拟退火,蚁群等。计算机病毒没有借鉴一下大自然的设计吗?
    rekulas
        6
    rekulas  
       2022-11-30 18:07:04 +08:00
    @cmdOptionKana 求生欲强的电脑病毒都是自力更生,自己寻找出路
    zhujinliang
        7
    zhujinliang  
       2022-11-30 18:07:06 +08:00 via iPhone
    能,杀毒软件主要靠特征码识别病毒,一些加壳、加花技术通过压缩加密程序指令,随机加入无效指令,调换不影响效果的指令的前后顺序,可以使得特征码产生变化,加壳加花也会用在防杀软误报,防破解跟踪上
    qinrui
        8
    qinrui  
    OP
       2022-11-30 18:09:48 +08:00 via iPhone
    @zhujinliang 这只是“外貌”变化,功能变化呢,比如毒性增强、减弱之类的
    zhujinliang
        9
    zhujinliang  
       2022-11-30 18:11:35 +08:00 via iPhone
    你要说自主变异出现非开发者设计的功能,那没有
    matolv
        10
    matolv  
       2022-11-30 18:12:39 +08:00 via Android
    Ai 能够自动编程那一天自然就能变异,一切病毒的特征向量在重编码后隐藏之前的特征即可完成变异。这和自然界的 rna 病毒变异是一样的,通属信息范畴
    crab
        11
    crab  
       2022-11-30 18:18:45 +08:00   ❤️ 1
    操作计算机的用户成为病毒角色就行了。
    mofe
        12
    mofe  
       2022-11-30 18:19:08 +08:00 via iPhone   ❤️ 2
    自主变异不难啊,每次复制自身的时候随机篡改几个 bit ,只要复制次数够多,总能变异出一些新功能,理论上,猴子也能在打字机上敲出《哈姆雷特》。

    但问题是这样病毒会变得越来越不可控,相当于期待盲敲代码完成需求,bug 绝对比功能多得多……
    killva4624
        13
    killva4624  
       2022-11-30 18:22:35 +08:00
    如果有一天 AI 能自主编程并且让程序正常运行,这个可能性就比较大了。
    muooOOO
        14
    muooOOO  
       2022-11-30 18:28:12 +08:00 via Android
    计算机病毒通过制造金钱,操控程序员修改自身算吗
    mofe
        15
    mofe  
       2022-11-30 18:28:20 +08:00 via iPhone
    @killva4624 #13 生物变异可不会管你到底能不能运行,如果有这样的限制,实际上变异的可能性在降低,设想一种情况,CPU 有个 bug ,这只能靠 bug 才能复现
    mofe
        16
    mofe  
       2022-11-30 18:31:12 +08:00 via iPhone
    @Mulch1406 #2 另外,既然讨论的是可能性,我们不妨大胆一点,哈希也是可以碰撞出来的
    rekulas
        17
    rekulas  
       2022-11-30 18:37:21 +08:00
    @mofe 你这个不是传统意义的自主变异了,生物编译是碱基对发生变化,改变粒度远大于程序的 bit 位,突变后大概率生物能生存(或生存一段时间)只是功能发生了变化,bit 变化大概率启动都会失败。。
    mofe
        18
    mofe  
       2022-11-30 18:48:55 +08:00 via iPhone
    @rekulas #17

    咱可以再大胆一点的,“几个”是随机的,多少都有可能

    另外,搞过汇编应该知道代码里一片一片无用区域……
    plmsuper8
        19
    plmsuper8  
       2022-11-30 19:47:27 +08:00 via iPhone
    DNA 变异感觉更类似于神经网络节点、参数变化,而非 bit 变化。
    buttenkill
        20
    buttenkill  
       2022-11-30 19:49:18 +08:00 via Android
    机械伯劳
    azarasi
        21
    azarasi  
       2022-11-30 20:38:01 +08:00
    二进制随机进化?
    8X96ZltB8D7WggD7
        22
    8X96ZltB8D7WggD7  
       2022-11-30 20:59:07 +08:00   ❤️ 2
    写过一个 demo ,程序自我复制变异,变异规则是二进制的翻转,初始程序命名规则是 1 到 1000 的随机数,进化了不知道多少代,有的程序命名突破了 1000 的限制,来到了 9000 多,之后太卡了,就没继续跑了
    jackliang007
        23
    jackliang007  
       2022-11-30 21:07:17 +08:00 via iPhone
    要实现病毒➕AI 的新生态吗
    cdlnls
        24
    cdlnls  
       2022-11-30 21:46:31 +08:00
    病毒==程序
    写出这个程序的时候,程序运行的逻辑一定是可预测可控的。既然这个程序可控,那么这个程序在进行“自主变异“的过程中一定也是可以预测的。所以说到底,这个程序的“自主变异”的结果,其实在写出这个程序的时候就已经有结果了,“变异”的过程也只是程序设计的功能之一。
    chizuo
        25
    chizuo  
       2022-11-30 22:07:10 +08:00
    @scp3041 描述类似于遗传算法??
    leloext
        26
    leloext  
       2022-11-30 22:11:13 +08:00   ❤️ 1
    有变形病毒,像古董 virut ,这类病毒早期才有,现在很少见了,属于少数高技术水平的病毒。
    germain
        27
    germain  
       2022-11-30 22:57:41 +08:00
    Polymorphic 病毒了解下,勒索病毒很多这类
    faustina2018
        28
    faustina2018  
       2022-11-30 23:07:36 +08:00 via iPhone   ❤️ 2
    计算机系统能不能像人体一样产生抗体?
    jeesk
        29
    jeesk  
       2022-11-30 23:13:45 +08:00
    wsseo
        30
    wsseo  
       2022-11-30 23:28:52 +08:00   ❤️ 1
    算力不够
    kaneg
        31
    kaneg  
       2022-11-30 23:32:42 +08:00   ❤️ 1
    从理论上来说,变异是遗传信息在复制过程中出错引起的。但是,生物病毒在人体内是以亿来计量的,复制次数也是指数级的,微小的错误累计起来是相当可观,这还是一个人,如果有成千上万的人累计起来,其数量相当惊人。而目前全世界的电脑数量都没有一个人的人体细胞多,所以电脑病毒的复制和传播数量相对生物病毒在数量级上还是差得太远。在未来几千年后,电脑的数量级与生物细胞数量级接近的时候,变异应该也是有可能发生的。
    levelworm
        32
    levelworm  
       2022-12-01 00:15:02 +08:00 via Android
    搜 self mutating computer virus 应该就能看到了。最简单的是随机加 nop ,复杂的也有很多。不过这些都是九十年代发展起来的技术,现在操作系统管的严,直接覆盖代码区应该不可能了。
    laqow
        33
    laqow  
       2022-12-01 02:41:46 +08:00
    生物病毒的功能取决于人对它的描述,只是在它无限突变的周期里面恰巧出现的某个状态。电脑病毒从一开始就是有功能的。
    dawn009
        34
    dawn009  
       2022-12-01 05:23:39 +08:00
    以前有一种“变形病毒”,可以在每次传染时改变自身的特征信息。当然,它不能改变核心逻辑。
    xuanbg
        35
    xuanbg  
       2022-12-01 07:58:48 +08:00
    我有个问题,现在还有以破坏数据或者计算机本身为目的病毒吗?难道不都是以窃取数据为目的的木马?
    Rocketer
        36
    Rocketer  
       2022-12-01 08:03:00 +08:00 via iPhone
    @Mulch1406 其实病毒变异的结果也是绝大多数直接死亡,少数活下来的里面绝大多数也失去了作用。变强的变种只是极少数,但胜在基数大,总能出现一两个成功的。
    ShinichiYao
        37
    ShinichiYao  
       2022-12-01 08:07:36 +08:00
    过去病毒变异主要是看杀毒软件厂家生意好不好
    Jessun
        38
    Jessun  
       2022-12-01 08:13:15 +08:00
    可以,但是会非常非常复杂。就是把人类大脑复刻一遍,让程序真正地拥有自由意识。
    不过那个情况会很不妙。一个完全不同次元的“生物”(我将这个程序称之为生物),它的自由意志的发展不受人类控制,人类的计算能力与它相比,就像是算盘 vs 计算机,成了类似“神”的“生物”。

    它会做出什么事情来?

    这样子说起来有点黑客帝国的味道……
    leonshaw
        39
    leonshaw  
       2022-12-01 08:17:14 +08:00 via Android
    资源不够
    Hosing
        40
    Hosing  
       2022-12-01 08:40:25 +08:00
    你是不是在问数码宝贝 /数码暴龙?
    8X96ZltB8D7WggD7
        41
    8X96ZltB8D7WggD7  
       2022-12-01 09:01:05 +08:00
    @chizuo 写的还不如遗传算法,demo 没有交叉和淘汰,全靠它们程序自己变异和互相淘汰,挺多程序变异后无法运行,能继续运行的程序就覆盖掉旧程序了
    chengkai1853
        42
    chengkai1853  
       2022-12-01 09:03:45 +08:00
    病毒加入深度学习?
    PbCopy111
        43
    PbCopy111  
       2022-12-01 09:57:42 +08:00
    我觉得没戏,控制病毒的宿主远超人类智慧。
    pipiking
        44
    pipiking  
       2022-12-01 10:20:43 +08:00   ❤️ 1
    不知道大家有没有看过《环界》系列的小说,如果大家没看过,推荐大家看看这系列小说~
    smallthing
        45
    smallthing  
       2022-12-01 10:26:44 +08:00
    病毒原理完全不同,自主编译需要比如说在机械盘复制自己,等待机械盘某个扇区出错然后多次出错累加去掉这部分居然可以运行
    目前是很难达到的
    Ediacaran
        46
    Ediacaran  
       2022-12-01 10:54:30 +08:00 via iPhone
    电脑病毒试错成本高,生物病毒在一个宿主体内产生的实例数量就超过电脑病毒所有存在的实例数量了
    zyzkeion
        47
    zyzkeion  
       2022-12-01 10:56:51 +08:00 via iPhone
    @cmdOptionKana 你忘了之前的 xcode 植入事件了?编译器有毒审核都没用的
    Nzelites
        48
    Nzelites  
       2022-12-01 11:05:34 +08:00
    哪天病毒想通了上岸进化成杀毒软件?
    cmdOptionKana
        49
    cmdOptionKana  
       2022-12-01 11:12:55 +08:00
    @zyzkeion 传播途径可控不等于彻底防止,而是一旦发现,容易溯源,这种情况下变异很难帮助传播。
    loolac
        50
    loolac  
       2022-12-01 13:18:37 +08:00
    目的不同,生命变异是为了生存,最后达到共存。计算机病毒不存在这个目的。
    litesoar
        51
    litesoar  
       2022-12-01 13:20:27 +08:00
    现在可能不行。
    weizhen199
        52
    weizhen199  
       2022-12-01 13:36:05 +08:00
    @loolac 360 病毒说
    Felldeadbird
        53
    Felldeadbird  
       2022-12-01 17:00:11 +08:00
    病毒需要先绕开 uac 吧(win 来说)。至少得学会自己找 0day
    lisxour
        54
    lisxour  
       2022-12-01 17:10:27 +08:00
    @zhujinliang 特征码已经是很老的手段了。。。现在都能检测 API 调用了,你再怎么加壳,最终调什么 api 这是绕不开的
    icy37785
        55
    icy37785  
       2022-12-01 17:18:06 +08:00
    十几二十年前的病毒有,当时杀毒软件主要看特征码,还挺多病毒就会自己在宿主机上尝试生成若干文件来改特征码加花,几轮下来还能正常运行且活下来的就能达到免杀的目的,后来杀毒软件不单纯看特征码了,这套玩不转了,就少了,未来可能会有新模式吧。感觉可以看看 ai 的发展。
    stevefan1999
        56
    stevefan1999  
       2022-12-01 17:31:48 +08:00
    nicebird
        57
    nicebird  
       2022-12-01 17:35:40 +08:00
    理论上可以。但是计算机病毒编写信息太精简了,稍微改了就跑不了,不像生命的 dna 坏了有一堆冗余不影响繁殖、生活。
    loolac
        58
    loolac  
       2022-12-01 17:40:44 +08:00
    @weizhen199 哈,360 确实是这样演变过来的,从流氓软件变成了电脑的功能,虽然仍然很流氓,但现在还有很多人在用。
    hullhutt
        59
    hullhutt  
       2022-12-01 17:49:25 +08:00
    两个完全不一样,只是带个病毒的字样而已
    proxytoworld
        60
    proxytoworld  
       2022-12-01 18:00:43 +08:00
    在可预见的 10 年内应该是不可以了
    Huelse
        61
    Huelse  
       2022-12-01 18:26:42 +08:00
    也许有吧,宇宙射线改变内存之类的,只要超过 ecc 能纠错的数量,这个概率实在低的可怜
    abc8678
        62
    abc8678  
       2022-12-01 19:41:01 +08:00 via Android
    @Mulch1406 在用户的电脑上弄?
    renhua
        63
    renhua  
       2022-12-01 19:43:58 +08:00
    印象里面上世纪应该就有病毒能变异 /随机变异,但尚不能称为“自主变异”
    kangkang
        64
    kangkang  
       2022-12-01 22:01:58 +08:00
    算力不够+1
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1095 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 22:36 · PVG 06:36 · LAX 14:36 · JFK 17:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.