西西河

主题:如何用绿坝养肉鸡(一) -- 代码ABC

共:💬168 🌺312 🌵1
分页树展主题 · 全看首页 上页
/ 12
下页 末页
            • 家园 猪哥这个名字你自己用很好。给我也不要哈

              第一,内存分配是链接时生成的,基本上一样

              你指的是内部偏移吧。 不然的话怎么解释什么

              叫动态连接库呢。DLL呀。 都编译的时候确定了

              不就是静态连接了吗。

              第二,你也别说这么多了。 就说,你覆盖了原

              EIP以后。假设你只是刚好覆盖掉EIP,没有

              进一步改写后面的函数参数。还没有引发内

              存保护错误出来。这个时候你只有一次机

              会,就是把原函数返回地址,指向你自己的

              代码的开始地址。

              我的问题是,你怎么能知道你自己代码的开始地

              址的??

              • 家园 就是后面说的那个定位,用调试的方法找到起点,再加长度
              • 家园 必须用的那个动态库其实是固定位置的
                • 家园 如果DLL的地址是固定死的

                  那这个可就是微软的大漏洞哟。

                  他自己把他自己制动的 动态编连的规则给破坏了

                  难道是因为要兼容 DOS 16位程序???

                  • 家园 这不能算漏洞

                    毕竟DLL的目的之一是用来节省内存,所谓动态的意思就是在需要时才加载,不需要的时候就可以卸除。并不需要每次加载的位置都不一样。而且为了链接方便,减少重定向的麻烦,每个DLL都有一个基地址,在加载时系统会按照这个基地址的设置将DLL加载到指定的位置上,也就是说如果没有地址冲突或内存不够的情况下,DLL的加载地址都是不变的。需要注意的一件事,既在NT内核中每个应用程序(进程)都会得到一个4G的虚拟地址空间(32位),而且exe的基地址默认都是0x00040000。也就是估算exe内部程序的地址空间是很简单的。

                    事实上,在做缓冲区溢出攻击的时候更多的是执行系统调用,比如添加帐号、修改帐号权限之类的事情,这时候我只需要知道系统API的入口即可。而在Windows系统中(其实其他系统都差不多),这些调用的入口是不变的。就Windows而言都在程序4G空间的上半部。这样的设计也不能算是漏洞,不然调用这些API的代码就需要系统做重定向,损失的就是运行效率了。

          • 家园 你的楼上讲的已经非常清楚了。

            第一,不管现在的代码如何复杂。执行到某个阶段,必定要执行一个RET(返回)指令,于是人为修改栈内容必定相当于实现某个JMP指令 --- RET(返回)指令自动修改EIP。

            第二,一般情况下,相同的程序(EXE,DLL)由程序PE表(在程序对应的磁盘文件内)决定虚拟加载地址。因此在不同机器上的被加载的虚拟地址完全相同。RING 3的代码根本无需同物理地址打交道。

            第三

            可是, IE进程是运行在3级环上的,只有运行在0级环上的KERNDLL,才能查讯地址寄存器表。否则马上就是一个硬中断。

            这个叫异常吧?

            第四。可以先下载一个小“驱动程序”并安装之,然后调用该驱动程序,获取RING 0的特权。

            • 家园 原理是清楚的

              可我觉得真要干的话,困难还不少。

              你说的第二点, PE表只能保证,段内偏移,是相同的吧。怎么可能保证每台机器上,同一个程序的绝对地址一样呢。用户A就用了一个IE,用户B同时开了20个不同

              进程。你说怎么保证绝对地址一样呀。

              而且我说的意思是,你怎么找到自己的代码存放的地址?

              除非用户的IE已经被你木马感染了,都在同一个地方,放着你的代码,不然的话,你怎么从EIP就跳得过去呢??

              • 家园 拜托,楼主用的完全是合法的技术,你却一定要往非法的方向带

                这么多病毒都有办法,去网上搜一下不就知道了吧。

                cchere这里不好讨论这种东西吧。

    • 家园 说真的

      此帖文风有点刻薄了,如今国内的科技白领真的能从取笑政府中得到如此大的满足感?(我没有任何贬意,只是奇怪...)

      buffer overflow attack 很多著名软件都有过.我倒是觉得从理论上说计算机识别黄色图片蛮难的,semantic gap很难解决的.政府真的缺少一些计算机科学方面的专家顾问,别人说能识别黄图,就信了,以为计算机科学无所不能呢.....

      • 家园 对绿坝这种反动腐败的产物不刻薄难道要感恩戴德么?

        除了自虐狂恐怕不会有人对往身上铐的手铐有好感把?

        • 家园 花季护航,不就是给小孩子用的么?

          你有小孩吗?小孩够年龄看hardcore了吗?没小孩的年轻人那么激动干什么?你不爽就删除了阿,没什么大不了的。土共的执行模式的缺点是粗暴简单,确实是惹到某些人了,骂一骂没关系。但是这里是技术版,讨论技术不需要那么刻薄吧?不爽的去社会版阿,去社会现象之类的地方,你往死里骂都无所谓,政治不就是这样么。但是“反动腐败”这种词用在讨论技术的地方有什么意义?难道独独是LB的缓冲区溢出就是“反动腐败”的?

分页树展主题 · 全看首页 上页
/ 12
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河