基于Gh0st的远控项目笔记
基于Gh0st的远控项目笔记花了些时间来完成的一个项目,大部分功能都实现了,并且修改了小部分东西。
教程挺老了,但是整体代码的框架是很牛逼的,虽然大部分都是直接搬教程的代码,但是整体流程走下来还是学到很多东西。
完成后的github链接:https://github.com/The-Itach1/MyGh0st
part1-环境配置VS环境配置需要下面两个配置,主要用于MFC项目。
创建MFC对话框程序创建MFC应用程序,基于对话框,在静态库中使用MFC。然后属性选择多字符集。
part2-客户端界面的设计和编写添加两个List Control先删除原窗口自带的一些控件,然后调整主窗口的大小,并且添加最大化,最小化功能。
删除原有控件Del就行,最大化和最小化主窗口,设置Maxximize Box和Minximize Box。
使用工具栏添加两个List Control,主要解决的问题是如何让两个控件跟着主窗口的缩放而缩放。
方法是采用OnSize,对主窗口设置一个针对于WM_SIZE的消息处理函数OnSize,这样就可以获得窗口变换时的长宽,然后再根据偏移设置两个控件的大小。
123 ...
CVE-2018-18708 TENDA缓冲区溢出漏洞
CVE-2018-18708 TENDA缓冲区溢出漏洞相比于之前的CVE-2018-5767,这个cve影响的路由器挺多,有arm架构,有mips架构的,本次实验的就是一个mips架构的Tenda AC9 US_AC9V3.0RTL_V15.03.06.42_multi_TD01。
来学习下mips架构下的一些不同之处。
https://github.com/The-Itach1/Audit
漏洞简介CVE-2018-18708,多款Tenda产品中的httpd存在缓冲区溢出漏洞。攻击者可利用该漏洞造成拒绝服务(覆盖函数的返回地址)。以下产品和版本受到影响:Tenda AC7 V15.03.06.44_CN版本;AC9 V15.03.05.19(6318)_CN版本;AC10 V15.03.06.23_CN版本;AC15 V15.03.05.19_CN版本;AC18 V15.03.05.19(6318)_CN版本。
Tenda AC9 US_AC9V3.0RTL_V15.03.06.42_multi_TD01固件下载:https://www.tenda.com.cn/service/d ...
CVE-2018-5767 TENDA栈溢出漏洞
CVE-2018-5767 TENDA栈溢出漏洞打算学习一下IOT相关的漏洞挖掘知识。
之前简单模拟过D-Link DIR-816 A2的任意命令执行漏洞,但是感觉能学到的东西较少,这次来复现一下一个TENDA的栈溢出漏洞。
只不过可惜的是没法完整复现rop链的调用过程。
实验目的复现 CVE-2018-5767,是TENDA-AC15 路由器V15.03.1.16版本固件上的一个栈溢出漏洞,架构是arm架构,初步学习下IOT的漏洞挖掘。
环境配置Ubuntu虚拟机,因为Ubuntu安装qemu很方便。
qemu环境
apt-get install qemu
pwndbg等环境的安装,可以参考我之前的文章,需要注意的点就是可能会和Ubuntu自带的gdb冲突,解决方法就是在自己的主目录下创建.gdbinit文件,写入pwndbg目录下gdbinit.py的路径
source gdbinit.py路径
固件US_AC15V1.0BR_V15.03.1.16_multi_TD01.bin下载地址:https://drivers.softpedia.com/get/Router-Switch ...
Springboot-Blog
基于spring boot的博客开发学习一下当前web开发中比较火的spring boot,直接就实战开发了,从开发中慢慢学习。
个人觉得这个课程是初步了解中最好的,详细,并且有解释,还有配套资源。https://www.bilibili.com/video/BV1KJ411R7XL?spm_id_from=333.999.0.0&vd_source=b7500783c2d0db35836200a2d00d0489
写完了后,感觉还是学到不少东西,了解了一些springboot的知识,一个网站的搭建,如何接收前端传的数据,如何处理,如何从数据库中提取数据,如何返回数据给前端,但是更多还是一个初步的了解吧,更多的详细点肯定是需要系统的学习的。
写完了也上传到了github:https://github.com/The-Itach1/Springboot-blog
前端开发由于个人不关注与前端,所以,直接用现成的。
后端开发构建框架先下载破解版,https://www.cnblogs.com/technicist/p/15229615.html破解版有更多的东西。
创建项目,发现没 ...
Crack_Typora
d4142479403bec628ce2fb7518b40159ae74b8fca77f89e059d910215b38ab3fbb7fffffe3917445501aa9c40704ac55e2b849a309645bed57bf221fdb3336c7e21353d1b12b71209ab09b9eac02bdef19548627fa7e5bbe015c10d2bd6b09a0c1064b26fa1b77c7ad08fe2dc2764ee9059d9571c668d00a84b709520d76a43f75cf9573613923424366e2a1e86f58fb34a1ddcc5f61c1433dcfb6b2495347d61cb529d38edba1553866b39b80a3e6334450967312ec3cd24482e15223521cd0a581147c6acb34178fcc42f7dcc4b269a76147689850e3777405abef1a7140fb159a238948066f29a300820a7a7e602211f373d5950f1b809 ...
Recent CTF summary
Recent CTF summary太久没更博客了,先水一篇,对之前的一些ctf进行一个总结,还有就是对我自己最近给小组出的几道题和我自己ctf中解题脚本的开源,开源地址:https://github.com/The-Itach1/D0g3-ctf-Re。
后面就是去继续完成我的远控了,已经完成了大半多了,由于大二事比较多,最近又是考试,就没怎么去管了,后面放假继续弄,应该还要去弄免杀,ctf就基本上不会看了,现在的环境就这样,题目水平也高低不齐,学不到东西了。
最后提一句,大二终于结束了。。。
网刃ctf re整体都很简单,没什么难度,没想到主办方还发会寄小玩偶,挺可爱。
freestyle爆破两个数就完事了。
re_easy_func两个文件,第一个文件是简单的异或。
第二个文件是变表base64。
squid挺迷惑,这道题也能是re,修改linux时间,定时打开文件即可。
开始还以为是打包成elf的py逆向,然后去查找资料,学到了archive_viewer解包的方法,https://www.jianshu.com/p/3c46eeb32873,没想到,这道题完全不用解包,解出来 ...
Simple Exe Packing
Simple Exe Packing本文章介绍最简单的32位exe程序加壳流程。本来是在寒假就已经写好了很大一部分代码,但是由于vs属性配置不起作用的原因,导致写的shellcode没法使用,也是最近才解决掉这个问题。
通过编写一个壳,可以对pe结构和程序执行过程有更深入的了解,而且这个壳的思路都是最简单的一种,只要shellcode厉害,壳就可以更能隐藏程序的信息。
代码已经上传到github上,https://github.com/The-Itach1/Simple-Exe-Packing
前置知识PE结构对pe结构体还是必须要有个大概的了解,不说能背,至少在peview工具中看到名称知道一些关机的结构体和其成员代表什么需要知道,还有exe在内存和在磁盘的区别已经如何转换。特别是对于IMAGE_EXPORT_DIRECTORY导出表和IMAGE_BASE_RELOCATION重定位表,实际上我在Windows-Hack-Programming的编程练习中,已经对这个很熟悉了。IMAGE_EXPORT_DIRECTORY导出表可能还没提到过,一般就是dll程序的导出函数的信息存储地方 ...
OWASP Top 10 learning
OWASP Top 10 learningweb常见基础漏洞学习
文件上传upload-labs环境搭建https://github.com/c0ny1/upload-labs
Pass-1-js检查前端的js检测
PHP代码
12345678910111213141516171819function checkFile() { var file = document.getElementsByName('upload_file')[0].value; if (file == null || file == "") { alert("请选择要上传的文件!"); return false; } //定义允许上传的文件类型 var allow_ext = ".jpg|.png|.gif"; //提取上传文件的类型 var ext_name = file.substring(file.lastIndexOf(&qu ...
向日葵 CNVD-2022-10270分析
向日葵 CNVD-2022-10270分析最近来看了看这个刚出的CNVD-2022-10270,与其他cve不同的是这个CNVD-2022-10270涉及到二进制的知识比较多。
这个主要危害是可以任意命令执行,并返回相应回显。
向日葵是什么向日葵远程控制软件是一款阳光的远程控制及远程桌面产品,通过向日葵你可以在世界上任何地点、任何网络中访问并远程控制你家里或办公室的电脑主机。向日葵是一款获得微软认证的远程控制软件,界面友好,简单易用,安全放心。向日葵和全球知名企业高通创锐讯合作推出全球首个从网络芯片实现远程开机/唤醒的一体化远程控制的解决方案。你还可以使用向日葵远程摄像头进行远程监控,轻松打造360度无死角、零成本家庭安防。向日葵远程控制软件已广泛应用于个人电脑,企业PC/服务器,网吧,校园,酒店等领域。
简单来说就是一个可以实现远程操控的软件。实际上使用还是很普及。
漏洞分析过程网上的很多文章都只是复现了一个过程,但是感觉说服力不是太强,很多地方都找不到原因,这里我尽量通过我自己的理解去猜测第一个发现这个漏洞的师傅的思路是怎样的。
环境搭建很多复现文章都是只在单机上进行复现,但是实际 ...
hgame 2022 re wp
hgame 2022 re wp1个月的hagme,时间还是比较长,但实际上做题的时间还是不长。
week3和week4的最后道re没做起,比较可惜,主要是没找到切入点,而且如果分析起来也很花费时间。
week1easyasm16位汇编,逻辑比较简单,就是单字节挨个加密,左4bit位和右4bit位交换位置,然后再异或0x17。
123456789101112131415161718#include<stdio.h>int main(){ unsigned char enc[29]={ 0x91, 0x61, 0x01, 0xC1, 0x41, 0xA0, 0x60, 0x41, 0xD1, 0x21, 0x14, 0xC1, 0x41, 0xE2, 0x50, 0xE1, 0xE2, 0x54, 0x20, 0xC1, 0xE2, 0x60, 0x14, 0x30, 0xD1, 0x51, 0xC0, 0x17}; int i; for(i=0;i<28;i++) { enc[i]=enc[i]^ ...