python 重定向 ctf_3.CTF——python利用工具
web AWD 攻与防
CTF线下赛主要考察代码审计能力及运维能力,代码审计发现漏洞,python写利用漏洞,运维发现可疑攻击目标,异常流量,异常权限,重要业务备份与还原。用运维的知识加固系统与业务。当被人攻击以后,不要慌。分出一个人查流量,另一个人继续审计代码,挖掘漏洞才是最重要的攻击源。实在发现不了漏洞时,改变策略,把精力重心移到流量上来。
web的漏洞利用
你已经通过代码审计定位到了这个漏洞,要去利用它。
一般都是通过特定的URL去触发这个漏洞。所有的web漏洞都是这样子的。
这个时候,怎么用python去写呢?
比如挖出了一个web利用摄像头的漏洞:发一个特定的URL,通过URL的返回,在它的cookies里面能够查到它的一个明文账号密码。
构造这个特殊的URL
怎么知道这个特殊的URL是什么呢?这需要在挖漏洞里下功夫了,这里是一个文件包含漏洞,这个地址把账号密码传到一个文件里面做认证,把认证的结果又返回给这个URL。
摄像头页面是这个公司写的,而做密码验证的是另一个公司写的。摄像头公司的人以为把账号密码发给另一个公司就可以做验证了,而另一个公司不仅把密码验证了,还把真正的密码给返回给摄像头的公司。在两个公司的交互过程中,漏洞就发生了。我们知道这个大前提,再配合挖掘漏洞的知识,这个特殊的URL就被我们构造出来了。
大部分都是怎么构造一个request请求包,解析返回包。
细节代码需要自己去收集攻击框架。比如,全场开火脚本:exploit_all.py
token(自己队伍的标识):你打了别人,拿到了flag,主办方怎么知道是谁提交的flag呢?把flag和token做一个运算。
全场攻击的host和port从哪里来?
读取targets文件来的,文件里面的格式为 IP:端口
比赛环境
linux运维
运维流程-SSH
如果主办方没有给私钥,尽量尝试配公私钥登录
禁止密码登录并配置公私钥登录(没绝对把握,仅把密码改了就可以,不用配置禁止密码登录,修改密码用passwd 用户名)
密钥登录
编辑sshd_config文件
vi /etc/ssh/sshd_config
禁用密码验证
PasswordAuthentication no
启用密钥验证
RSAAuthentication yes
PubkeyAuthentication yes
指定公钥数据库文件
AuthorsizedKeysFile .ssh/authorized_keys
也可以这样改
重启SSH服务前建议多保留一个会话以防不测。
linux很难出现远程溢出漏洞,很少有人掌握这个漏洞,非常少见。能进来的大多数要靠暴力猜解。
因为我们现实中,大多数使用一个SSH管理工具(SecureCRT)的一个小软件来连接linux业务环境进行工作的。
如果控了他windows机器,通过对windows攻击(如木马)就可以拿到linux业务管理环境的密码。
我们如何防止木马拿到密码呢?这个时候就可以配公私钥,用私钥去登录。你监听吧,咱不输入密码了。嘿嘿。
主机右键--去掉其他钩,留下私钥认证--加载私钥文件。这种登录方式是非常安全的。如果你使用这种方式登录,别人不可能拿到你的私钥的。私钥是与本地绑定的,送给他都没关系,不要怕。
细节可以直接搜索: SSH公钥登录
私钥长什么样子的呢?来,亲。你慢慢去猜解密码吧。
公钥批量写入
nmap扫描22
hydra SSH爆破 -user 用户名文件 密码文件 -p
字典生成工具 crunch
web源码备份
crontab -l 查看计划任务 crontab -e 编辑
ctl+o保存 ctl+x退出
人家给你加一个网马,加一个哈希值,你知道有网马但是找不到。
1.初始化 2.对比,哪些文件是新增的
数据库备份
虚拟机的快照是直接把内存 dump下来了
不要把3306留在网上,不要远程去维护,关掉远程维护的配置
不管用VPN也要其他的也罢,只要你的数据库留在网上,端口爆出来。VPN只是传输安全,但是人家用你的密码去登陆也是一样的。你知道VPN相对安全,但你不知道自己的电脑是否有问题。另外,不管是VPN还是什么,它们都会被别人远程爆破掉。
网线拔掉,电源关掉的电脑最安全,其他的地方你不能这样做,但是数据库你可以这样做,没有任何远程管理的需求。
数据库降权
你的数据库没有开远程,但是别人通过其他端口进入了你的系统,把你的数据库给爆出来了,而你压根就用不上那么高的权限,运行数据库的时候,难道要给它一个root权限吗?这个时候就要降权,把账号也绑定到只能本地登陆。这个时候,别人怎么样都无法通过远程来访问你的数据库了。
这里的dog是在调戏别人,别人在攻击你的数据库时会扫描数据库的名字。他看见你的数据库名字是dog,密码是123456,也进不来,只能本地登陆。
本地:不是说到机房,是不把数据库的端口给外面提供。在虚拟机可以登陆数据库,而母体机无法登陆数据库。通过SSH连到虚拟机里面,再去登陆数据库。也算是本地登陆。假设绑定的为linux登陆数据库,那么我们用SSH远程连接linux就可以了。而连接linux的又是公私钥的方式,还是本地绑定的。你种木马也没用,爆破更不可能。完美。
linux服务器权限管理
权限配置
对于非必须可写的目录
权限设置755,拥有者设为非www-data用户;从而防止文件被篡改/删除
对于必须可写的目录
根据服务器类型,上一个.htaccess,或者修改nginx的目录配置文件,去除此路径的脚本执行权限
防御脚本 都是用python写的 python做安全运维很有优势
waf
文件监控 watch python 脚本
监控到别人上传的Helloworld文件
我们发现这时,如果把监控记录重定向文件里面,就变成监控日志了。保护好这个监控日志。
通过一句话给自己一个apache的权限,因为别人在攻克你服务器的时候,拿到的权限也是apache的权限,自己把自己的程序杀掉。如果你用比较低的权限去运维,你连别人运行的木马都杀不掉。
这也是为什么,你用的windows系统中,删除不了文件的原因,你的权限不够。最高的权限是system权限,不是admin。
网络拓扑扫描
如果你是防御的,你要查看一下内网中其他机器的防御机制;如果你是做攻击的,你要查看一下其他机器的薄弱点。
如果你队友的机器很薄弱,可以屏蔽了他,别人从他那里下手无法攻击到你这边。攻击者会寻找最薄弱的地方,当成一个跳板机来对你下手。
为什么外网端口强,内网就不强了呢?有些端口会开放到外网上,有些端口会开放到内网中。如内部的FTP,SMB等。外部端口一般漏洞少,内部端口往往存在大量漏洞。
python 重定向 ctf_3.CTF——python利用工具相关推荐
- python重定向_在Python中使用urlopen()防止“隐藏”重定向
我正在使用BeautifulSoup进行网页抓取,并且在使用urlopen时遇到特定类型网站的问题.网站上的每个商品都有其独特的页面,并且商品具有不同的格式(例如:500 mL,1L,2L等). 当我 ...
- python phpstudy_GitHub - Writeup007/phpStudyBackDoor: phpStudy后门检测与利用工具,Python脚本,可一键 GetShell。...
phpStudyBackDoor phpStudy后门检测与利用工具,Python脚本,可一键 GetShell. 简述 2019年9月20日,网上传出 phpStudy 软件存在后门,随后作者立即发 ...
- python编写sql注入工具-利用Python实现SQL注入 - Python黑客编程入门系列 - 8
{getUnitName} {getLessonName} 敬请期待 免费 {getTaskName} 剩余观看时长:{watchLimitRemaining} 回放 {activityStartTi ...
- python中文文档-Python语言、主要工具与类库中文文档
Python是Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python 提供了非常完善的基础代码库,覆盖了网络.文件.GUI.数据库.文本等大量 ...
- python代码翻译-10 行代码,Python 教你自制屏幕翻译工具,有逼格!!
原标题:10 行代码,Python 教你自制屏幕翻译工具,有逼格!! 1. 场景 大家如果平常遇到不认识的英文,相信大部分的人都会复制内容后,使用翻译软件,或者拷贝到网站上去执行翻译. 当然,对于 I ...
- python自定义函数画图_利用Python绘图和可视化(长文慎入)
Python有许多可视化工具,但是我主要讲解matplotlib(http://matplotlib.sourceforge.net).此外,还可以利用诸如d3.js(http://d3js.org/ ...
- 适合pythonpandas的软件_适合 Python 入门的 8 款强大工具!
原标题:适合 Python 入门的 8 款强大工具! 作者 | codeavail.com 译者 | 弯月,责编 | 屠敏 以下为译文: Python是一种开源的编程语言,可用于Web编程.数据科学. ...
- python基于web可视化_独家 | 基于Python实现交互式数据可视化的工具(用于Web)
转自:数据派ID:datapi 作者:Alark Joshi 翻译:陈雨琳 校对:吴金笛 本文2200字,建议阅读8分钟. 本文将介绍实现数据可视化的软件包. 这学期(2018学年春季学期)我教授了一 ...
- python交互式数据可视化_基于Python实现交互式数据可视化的工具,你用过几种?...
作者:Alark Joshi 翻译:陈雨琳 来源:数据派THU(ID:DatapiTHU) 我教授了一门关于数据可视化的数据科学硕士课程.我们的数据科学硕士项目是一个为期15个月的强化项目,这个项目已 ...
最新文章
- 2016 湖南省省赛B题《有向无环图》
- 牛客多校3 - Sort the Strings Revision(笛卡尔树+分治)
- ORA-29339错误解决办法
- React.js开发生态系统概览 [译-转]
- 设置Spring 3开发环境
- Java中getResource()的用法
- 选择用户-显示已选用户
- 3天,我用Python手撕了一个深度学习框架!
- C# 使用同余代换简化多个大数相乘取模运算
- android模拟点击webview,的Android的WebView点击模拟
- 利用jmeter对mysql数据库进行压力测试
- 传京东副总裁蒉莺春或将接管POP业务-搜狐IT
- 什么是NVMe驱动器,您应该购买一个吗?
- 电子电路绘图与仿真软件
- 惠普暗影精灵2 Mojave(几乎完美黑苹果)
- IBatis开发指南-夏昕
- 小米笔记本PRO BIOS忘记密码后重置教程
- App extension实战 - NetworkExtension 讲解连接并捕获packet
- 【js获取当天时间0点和23点59分59秒】
- 如何用PS去掉照片中的路人