VulnHub-Tr0ll:1
VulnHub-Tr0ll:1渗透详细思路
这是我打的第四个靶机,思路比以前清晰很多,一些常用的工具也越来越熟练。还是拿shell吧,到这个地方就有点困难了。再练~
基本思路:
nmap找目标ip,开放端口(21:ftp;22:ssh;80:http),访问web页面寻找有用信息
利用21端口找到一个文件分析包,wireshark打开找到一个路径
打开后有一个roflmao文件,对这个文件利用strings进行分析,找到另一个路径,发现了用户名和密码文件,下载下来
利用hydra进行爆破,找到登录名和密码
ssh登陆,输入命令uname -a
查看内核/操作系统/CPU信息,
找到Ubuntu的版本信息,利用exploits官网找到漏洞
上传对应的脚本到靶机中,python运行拿shell并获取tty,利用wget将脚本下载到靶机
利用gcc改文件名,获取到root权限
小知识点
一、21端口:ftp
https://blog.youkuaiyun.com/qq_38526635/article/details/82146495
-
FTP的匿名登录一般有三种:
1、 用户名:anonymous 密码:Email或者为空
2、 用户名:FTP 密码:FTP或者为空
3、 用户名:USER 密码:pass -
常用命令
1、help、?、rhelp
①help显示LOCAL端(本地端)的命令说明,若不接受则显示所有可用命令;
②?,相当于help,例如:?cd;
③rhelp同help,只是它用来显示REMOTE端(远程端)的命令说明。
2、ascii、binary、Image、type
①ascii切换传输模式为文字模式;
②binary切换传输模式为二进制模式;
③image相当于binary;
④type用于更改或显示目前传输模式。
3、bye、quit
①bye退出FTP服务器;
②quit相当于bye。
4、cd、cdup、lcd、pwd、!
①cd改变当前工作目录;
②cdup回到上一层目录,相当于“cd…”;
③Icd用于更改或显示LOCAL端的工作目录;
④pwd显示目前的工作目录(REMOTE端);
⑤!,用于执行外壳命令,例如“!ls”。
5、delete、mdelete、rename
①delete删除REMOTE端的文件:
②mdelete批量删除文件;
③rename更改REMOTE端的文件名。
6、get、mget、put、mput、recv、send
①get下载文件;
②mget批量下载文件;
③put上传文件;
④mput批量上传文件;
⑤recv相当于get;
⑥send相当于put。
7、hash、verbose、status、bell
①hash当有数据传送时,显示#号,每一个#号表示传送了1024B或8192b;
②verbose切换所有文件传输过程的显示;
③status显示目前的一些参数;
④bell当指令做完时会发出叫声。
8、ls、dir、mls、mdir、mkdir、rmdir
①ls有点像Unix下的ls(list)命令;
②dir相当于“ls-l”;
③mls只是将远端某目录下的文件存于LOCAL端的某文件里;
④mdir相当于mls;
⑤mkdir像DOS下的md(创建了目录)一样;
⑥rmdir像DOS下的rd(删除了目录)一样。
9、open、close、disconnect、user
①open连接某个远端FTP服务器;
②close关闭目前的连接;
③disconnect相当于close;
④user再输入一次用户名和密码(有点像Linux下的su)。
二、Ubuntu操作系统漏洞扫描和分析
三、ufw——简单防火墙
ufw(简单防火墙Uncomplicated FireWall)真正地简化了 iptables,它从出现的这几年,已经成为 Ubuntu 和 Debian 等系统上的默认防火墙。
检查防火墙的状态(默认 inactive) # ufw status
防火墙版本 # ufw version
启动ufw防火墙 # ufw enable
关闭ufw防火墙 # ufw disable
默认禁止访问所有 # ufw default deny
开放22/TCP端口 # ufw allow 22/tcp
开放53端口(tcp/udp) # ufw allow 53
禁止外部访问 # ufw deny 3306
删除已经添加过的规则 # ufw delete allow 22
允许此IP访问所有的本机端口 # ufw allow from 192.168.1.100
删除上面的规则 # ufw delete allow from 192.168.1.100
查看规则,显示行号 # ufw status numbered
删除第三条规则 # ufw delete 3
关闭ufw # ufw disable
禁止对8888端口的访问 # ufw deny 8888
打开来自192.168.0.1的tcp请求的22端口 # ufw allow proto tcp from 192.168.0.1 to any port 22
https://www.jb51.net/article/184257.htm
常用工具篇
一、wireshark:流量分析
这个工具的使用非常重要,我会单独写篇博客进行学习
二、SSH
SSH(远程连接工具)连接原理:ssh服务是一个守护进程(demon),系统后台监听客户端的连接,ssh服务端的进程名为sshd,负责实时监听客户端的请求(IP 22端口),包括公共秘钥等交换等信息。
服务器启动的时候自己产生一个密钥(768bit公钥),本地的ssh客户端发送连接请求到ssh服务器,服务器检查连接点客户端发送的数据和IP地址,确认合法后发送密钥(768bits)给客户端,此时客户端将本地私钥(256bit)和服务器的公钥(768bit)结合成密钥对key(1024bit),发回给服务器端,建立连接通过key-pair数据传输。
1.登录 :ssh -p22 omd@192.168.25.137
2.直接执行命令 -->最好全路径
ssh root@192.168.25.137 ls -ltr /backup/data
==>ssh root@192.168.25.137 /bin/ls -ltr /backup/data
3.查看已知主机
cat /root/.ssh/known_hosts
4.ssh远程执行sudo命令
ssh -t omd@192.168.25.137 sudo rsync hosts /etc/
5.scp
1.功能 -->远程文件的安全(加密)拷贝
scp -P22 -r -p /home/omd/h.txt omd@192.168.25.137:/home/omd/
2.scp知识小结
scp是加密远程拷贝,cp为本地拷贝
可以推送过去,也可以拉过来
每次都是全量拷贝(效率不高,适合第一次),增量拷贝用rsync
6.ssh自带的sftp功能
1.Window和Linux的传输工具
wincp filezip
sftp -->基于ssh的安全加密传输
samba
2.sftp客户端连接
sftp -oPort=22 root@192.168.25.137
put /etc/hosts /tmp
get /etc/hosts /home/omd
3.sftp小结:
1.linux下使用命令: sftp -oPort=22 root@x.x.x.x
2.put加客户端本地路径上传
3.get下载服务器端内容到本地
4.远程连接默认连接用户的家目录
查询openssl软件
rpm -qa openssh openssl
查询sshd进程
ps -ef | grep ssh --> /usr/sbin/sshd
查看ssh端口
netstat -lntup | grep ssh
ss | grep ssh
效果同上,同下,好用)
netstat -a | grep ssh
(记住这个)
netstat -lnt | grep 22
==> 查看22端口有没有开/ssh服务有没有开启
技巧:
netstat -lnt | grepssh| wc -l
–>只要大于2个就是ssh服务就是好的
查看ssh的秘钥目录
ll /root/ .ssh /known_hosts
# 当前用户家目录的.ssh目录下
ssh的配置文件
cat /etc/ssh/sshd_config
ssh服务的关闭
service sshd stop
ssh服务的开启:
service sshd start
ssh服务的重启
service sshd reload
[停止进程后重启] ==> 推荐service sshd restart [干掉进程后重启] ==> 不推荐
ssh远程登录
ssh 192.168.1.100
# 默认利用当前宿主用户的用户名登录
ssh omd@192.168.1.100
# 利用远程机的用户登录
ssh omd@192.168.1.100 -o stricthostkeychecking=no
# 首次登陆免输yes登录
ssh omd@192.168.1.100 "ls /home/omd"
# 当前服务器A远程登录服务器B后执行某个命令
ssh omd@192.168.1.100 -t "sh /home/omd/ftl.sh"
# 当前服务器A远程登录服务器B后执行某个脚本
https://blog.youkuaiyun.com/pipisorry/article/details/52269785
https://www.cnblogs.com/machangwei-8/p/10352725.html
三、nessus:系统漏洞扫描与分析工具
安装地址:https://www.tenable.com/downloads/nessus?loginAttempted=true
安装方法:https://blog.youkuaiyun.com/weixin_59679023/article/details/120820123
参考https://blog.youkuaiyun.com/n994298535/article/details/84855382