欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

编写反连ShellCode遇到的难点并解决之总结

编写反连ShellCode遇到的难点并解决之总结

题目:编写反连ShellCode遇到的难点并解决之总结

blog:http://hi.baidu.com/zhanglinguo11
目录
0x1 题记
0x2 相关
0x3 难点
0x4 总结
0x1 题记
   漏洞分析暂告了一个段落,转向了独立编写一个反连的ShellCode,相关代码网络上已经很多很多,
   自己也参考了网络上公布的代码进行编写,此篇文章主要记录编写过程中困扰自己很多时间的相关问题,并加上自己的理解。
0x2 相关
开发系统:
        Windows XP SP3_cn
  虚拟机Windows XP sp2_cn
开发软件:
  vc++6.0 sp6中文版
  vs2008 中文版
调试软件:
  WinDbg
0x3 难点
    由于对win32_socket编程一点也不了解,最多也就编写过扫描端口的小程序,也是照着网上的代码版拼半凑的完成,
    所以此次编写反连的ShellCode的过程完全是在对其一无所知的情况下完成的,当然完成之后对socket编程也还是一知半解的状态。
  先是在网络上搜索有关于反连ShellCode的相关代码,真正能搜索到的代码很少,很多相同或者类似的代码对自己没有什么用处,
  最后在metasploit的网站上下载到一套代码,其机器码可以正常执行,但源码是asm格式在本机上编译很多地方出错,
  不最多如何进行修改,其功能不符合此次编写的要求,只能手动自己编写,代码作为参考。相关代码会进行打包上传,
  我写的源代码就不传了,大家可以根据帖出来的代码自行编写。
    此前已经把本地监听端口的相关代码已经完成,故利用此前的相关代码,经过比较与监听端口相比只存在相关网络处理函数的不同,
    其初始化函数都是相同的。
0x3.1 
  在虚拟机中使用NC工具监听需要连接的端口,命令为nc.exe -l -p   4444-vv
   经过WSAStartup及WSASocketA(2,1,0,0,0,0)函数处理后,接下来需要调用connect进行相关处理。
   查询资料得connect执行成功,则其返回值为0,在调试的时候返回值都是0xffffffff,报错并退出,代码为:

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途。
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功