always there for you

善于生活,善于学习,这是我和你的目标.

[置顶] 解析最近的网页木马

[置顶] Visual Web Developer 2008 创建 DAL

[置顶] 防止用户重复登陆-asp

普通恶意代码技术分析与检测

1 引言

  近些年来,恶意代码依赖一些特殊的Native API函数和内核系统函数进行感染、传播、隐藏的这种趋势愈加明显代码,并大量的使用了多重加密壳、驱动关联壳、变形壳等代码保护机制和多态和变形等新的技术。

    传统的恶意代码查杀技术遭到了严重的挑战。

    恶意代码开发者想尽了各种办法,对进程、文件、注册表、系统服务、网络服务等各方面信息进行了控制,内核级的恶意代码做得更加巧妙和隐蔽。从技术上进行分类,恶意代码使用的技术手段可以分为:

(1)用户模式系统调用劫持;
(2)核心模式系统调用劫持;
(3)核心模式数据篡改;
(4)核心模式中断处理程序劫持。

2 对进程信息的控制

  大家知道,windows操作系统给我们提供了两套公开的API函数来获得进程信息:一套是PSAPI,通过EnumProcesses()函数来枚举进程,另一套是ToolHelp32,通过Process32First()和Process32Next()函数来获得整个进程列表.

    现在运行在用户层的恶意代码一般都会让自己在系统进程列表中消失,原理是HOOK上述进程相关API函数,将自身进程从最后的进程列表中去除,但这样做一般很容易发现。
    如图2所示,PSAPI和ToolHelp32都是通过调用位于ntdll.dll中的一个native API函数NtQuerySystemInformation()获取进程信息,而函数NtQuerySystemInformation()是依靠内核函数ExpGetProcessInformation()遍历ActiveProcessLinks,通过EPROCESS结构(其中包含ActiveProcessLinks项,类型为LIST_ENTRY)获得真实进程列表信息。整个环节中,内核态的恶意代码可以试图通过HOOK函数NtQuerySystemInformation()和函数ExpGetProcessInformation(),将自己的相关进程从返回结果中去除或者直接从ActiveProcessLinks摘除自身相关进程信息, 即要把要隐藏的进程的EPROCESS从LIST_ENTRY中摘除。另外几乎所有的反病毒查杀软件和系统进程软件使用 PsSetCreateProcessNotifyRoutine()来监视进程创建和销毁,但是令人遗憾的是该函数最多只能设置8个回调函数,因此有不少内核级的恶意代码被动隐藏自身相关进程的时候,还主动得销毁掉其它进程监控软件的使用的回调函数,让进程监控失效。


 

DLL注入步骤

  DLL注入需要完成的步骤以及所需要的API函数:

1.在要注入的进程中为DLL代码分配所需占据的空间---->VirtualAllocEx

LPVOID WINAPI VirtualAllocEx(
__in HANDLE hProcess,
__in_opt LPVOID lpAddress,
__in SIZE_T dwSize,
__in DWORD flAllocationType,
__in DWORD flProtect);

前去MSDN官方说明地址

2.在要注入的进程中为要注入的DLL所需的参数分配空间---->VirtualAllocEx

3.把DLL的名字和代码写入要注入进程的存储空间---->WriteProcessMemory

BOOL WriteProcessMemory(
HANDLE hProcess,         // handle to process whose memory is written to
LPVOID lpBaseAddress,    // address to start writing to
LPVOID lpBuffer,         // pointer to buffer to write data to
DWORD nSize,             // number of bytes to write
LPDWORD lpNumberOfBytesWritten   // actual number of bytes written
);

dnf进不了的问题

     回学校了几天,今天终于弄到了dnf的激活码..

     哎,想起来都是心酸...7个QQ号从4月下旬一直参加活动到现在,都没有在官方活动中抽到激活码...

    这TX,真是在忽悠我们...(不知道有没人抽到过)

    中午时候,群里有人发激活码,抢到一个...

    赶快打开游戏,晕,竟然在频道那里卡住了,一直"连接服务器",然后自动退出...

Mp3player--(vb+wmp控件)

   因为要做车回去了,整理了下平常用的工具到U盘里,发现里以前用VB做的MP3Player,安装了试下,还能用,呵呵...

   该程序采用VB6.0和WMP控件制作,用setup Factory打包,没有打包好,在没有安装Vb的机上运行会出错,工程文件也没有保存,现在想修改也修改不了了...

   以下是下载地址: MP3Player.rar

   纯是娱乐哈...

【转帖】十招教你学会软件破解

下面谈到了一些在学习解密过程中经常遇到的问题,本人根据自己的经验简单给大家谈一谈。这些问题对于初学者来说常常是很需要搞明白的,根据我自己的学习经历,如果你直接照着很多破解教程去学习的话,多半都会把自己搞得满头的雾水,因为有很多的概念要么自己不是很清楚,要么根本就不知道是怎么一回事,所以希望通过下面的讨论给大家一定的帮助:

  1. 断点:所谓断点就是程序被中断的地方,这个词对于解密者来说是再熟悉不过了。那么什么又是中断呢?中断就是由于有特殊事件(中断事件)发生,计算机暂停当前的任务(即程序),转而去执行另外的任务(中断服务程序),然后再返回原先的任务继续执行。打个比方:你正在上班,突然有同学打电话告诉你他从外地坐火车过来,要你去火车站接他。然后你就向老板临时请假,赶往火车站去接同学,接着将他安顿好,随后你又返回公司继续上班,这就是一个中断过程。我们解密的过程就是等到程序去获取我们输入的注册码并准备和正确的注册码相比较的时候将它中断下来,然后我们通过分析程序,找到正确的注册码。所以我们需要为被解密的程序设置断点,在适当的时候切入程序内部,追踪到程序的注册码,从而达到crack的目的。

  2. 领空:这是个非常重要的概念,但是也初学者是常常不明白的地方。我们在各种各样的破解文章里都能看到领空这个词,如果你搞不清楚到底程序的领空在哪里,那么你就不可能进入破解的大门。或许你也曾破解过某些软件,但那只是瞎猫碰到死老鼠而已(以前我就是这样的^_^,现在说起来都不好意思喔!)。所谓程序的领空,说白了就是程序自己的地方,也就是我们要破解的程序自己程序码所处的位置。也许你马上会问:我是在程序运行的时候设置的断点,为什么中断后不是在程序自己的空间呢?因为每个程序的编写都没有固定的模式,所以我们要在想要切入程序的时候中断程序,就必须不依赖具体的程序设置断点,也就是我们设置的断点应该是每个程序都会用到的东西。在DOS时代,基本上所有的程序都是工作在中断程序之上的,即几乎所有的DOS程序都会去调用各种中断来完成任务。但是到了WINDOWS时代,程序没有权力直接调用中断,WINDOWS系统提供了一个系统功能调用平台(API),就向DOS程序以中断程序为基础一样,WINDOWS程序以API为基础来实现和系统打交道,从而各种功能,所以WINDWOS下的软件破解其断点设置是以API函数为基础的,即当程序调用某个API函数时中断其正常运行,然后进行解密。例如在SOFTICE中设置下面的断点:bpx GetDlgItemText(获取对话框文本),当我们要破解的程序要读取输入的数据而调用GetDlgItemText时,立即被SOFTICE拦截到,从而被破解的程序停留在GetDlgItemText的程序区,而GetDlgItemText是处于WINDWOS自己管理的系统区域,如果我们擅自改掉这部分的程序代码,那就大祸临头了^_^!所以我们要从系统区域返回到被破解程序自己的地方(即程序的领空),才能对程序进行破解,至于怎样看程序的领空请看前面的SOFTICE图解。试想一下:对于每个程序都会调用的程序段,我们可能从那里找到什么有用的东西吗?(怎么样去加密是程序自己决定的,而不是调用系统功能实现的!)

 

依儿酷站跨网站漏洞

     刚刚到依儿酷站里溜达,那里有很多设计得很好的网页!

    因为本人没什么色觉细胞,配色也不行,所以经常去看看里面的Flash网站!.

    点击依儿的设计论坛的文章来看

     

     发现跳转到了bbs/error.asp这个页面,重要的是它传递的参数竟然是这样的(看下图):

MS08-013:Microsoft Office 中远程执行代码漏洞

发布日期: 二月 12, 2008

版本: 1.0

摘要:

此关键安全更新解决了 Microsoft Office 中一个秘密报告的漏洞。 如果用户打开特制的 Microsoft Office 文件,而文档中插入了格式错误的对象,则该漏洞可能允许远程执行代码。 成功利用此漏洞的攻击者可以完全控制受影响的系统。 攻击者可随后安装程序;查看、更改或删除数据;或者创建拥有完全用户权限的新帐户。 那些帐户被配置为拥有较少系统用户权限的用户比具有管理用户权限的用户受到的影响要小。

建议。  Microsoft 建议用户立即应用此更新。

受影响的软件 

Office 套件及其他软件 最大安全影响 综合严重等级 此更新替代的公告

Microsoft Office 2000 Service Pack 3
(KB944425)

远程执行代码

严重

MS06-047

Microsoft Office XP Service Pack 3
(KB944423)

远程执行代码

重要

MS06-047

Microsoft Office 2003 Service Pack 2
(KB945185)

远程执行代码

重要

MS06-047

Microsoft Office 2004 for Mac
(KB948056)

远程执行代码

重要

MS07-060

 

ShellCode解密-alwaysthere

   昨天做了个ShellCode解密的小程序(此程序需要FrameWork框架),虽然还是存在一点问题,但还是能实现一些功能,可以搜索ShellCode中包含的网址!.

   ShellCode解密原则:

   例如:%u7468

      将68转换为以16进制转换为10进制,再输出成对应的ascall码值

      68--转换为10进制为--104,变为unicode值为h--转换ascall码值为"h"
      74--转换为10进制为--116,变为unicode值为t--转换ascall码值为"t"
      即%u7468为"ht"

    下载地址:ShellCode.rar

日历

<< 2008-5 >>

Sun

Mon

Tue

Wed

Thu

Fri

Sat

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

最近发表

Search

站点统计

  • 文章总数:86
  • 评论总数:19
  • 引用总数:0
  • 浏览总数:661
  • 留言总数:15
  • 当前主题:Coolmud_Fashion_Ink
  • 当前样式:FInk

友情链接

图标汇集

  • RainbowSoft Studio Z-Blog
  • RainbowSoft Studio Z-Blog
  • 本站支持WAP访问
  • 订阅本站的 ATOM 1.0 新闻聚合
  • 订阅本站的 RSS 2.0 新闻聚合

Copyright www.alwaysthere.com.cn . Some Rights Reserved.

              

Powered By Z-Blog 1.8 Devo Build 80201