misc刷题记录(1)陇剑杯

[陇剑杯 2021]签到

题目内容:此时正在进行的可能是__________协议的网络攻击。(如有字母请全部使用小写,填写样例:http、dns、ftp)。得到的flag请使用NSSCTF{}格式提交。

打开统计,找到协议分级,发现TCP协议是占比最多的协议

 在TCP协议里HTTP协议占了大部分。筛选http流量,发现很多403的失败请求,故答案为http

[陇剑杯 2021]jwt

1.该网站使用了______认证方式。(如有字母请全部使用小写)。得到的flag请使用NSSCTF{}格式提交。
2.黑客绕过验证使用的jwt中,id和username是______。(中间使用#号隔开,例如1#admin)。得到的flag请使用NSSCTF{}格式提交。
3.黑客获取webshell之后,权限是______?。得到的flag请使用NSSCTF{}格式提交。
4.黑客上传的恶意文件文件名是_____________。(请提交带有文件后缀的文件名,例如x.txt)。得6到的flag请使用NSSCTF{}格式提交。
5.黑客在服务器上编译的恶意so文件,文件名是_____________。(请提交带有文件后缀的文件名,例如x.so)。得到的flag请使用NSSCTF{}格式提交。
6.黑客在服务器上修改了一个配置文件,文件的绝对路径为_____________。(请确认绝对路径后再提交)。得到的flag请使用NSSCTF{}格式提交。

第一题:

首先,补充知识点

网站使用的认证方式主要有:

  • Session机制
  • JWT
  • OAuth2
  • Cookie
  • HTTP Basic Auth
  • OpenID Connect
  • 双因素认证

JWT:头部、载荷和签名三段数据以.分隔,通过base64进行加密。第一部分header,放入token的类型(“JWT”)和算法名称(RS256等);第二部分payload,放入用户的不敏感信息(用户id等);第三部分signature,根据不公开的秘钥加上header中声明的算法,生成特定的签名。最终三部分组合起来即形成了token,发送给客户端。

也可以通过解密来判断

在tcp流量1中,追踪tcp流,就可以找到token

所以第一题答案,为jwt。

第二题:

        这里的思路是,既然要找绕过验证以后的id和username,那么也就是说,要找的时间段应该要在获得了root权限的时候,那后面基本就是手搓root了

        这里我是通过对tcp流和对反馈信息的筛选,以及对状态码的响应定位到了一个大致可能嫌疑的位置,因为从这里开始,状态码就开始了一直是响应成功的状态,而且,后面请求的页面也开始变得稳定,所以选择定位在这里。

 然后追踪TCP流

 在tcp.stream eq 10中,执行命令成功回显root,因此该处的token为所需的数据,按下面的知识点所写的那样,用base解码token的第二段内容,就可以找到username和id

当然,按照规范的做题思路,应该是去检索在whoami这个字符串(whoami 命令是一个简单且实用的工具,用于快速查看当前操作系统会话中的用户身份信息。)

可以定位到这两个,在这两个里面都有root的信息,解jwt的第二部分以后,都可以获得相同的信息

所以答案为

10087#admin

第三题:

在第二题的弹窗信息中,可以知道,权限为root,同时,也可以在tcp.stream eq 30中找到相关的信息

所以答案为 root

第四题:

在whoami后续的流量中,可以找到

这个1.c文件,在后面的流量中,也有对这个文件的操作的记录

所以答案1.c

第五题

        因为这里已经给了文件的相关信息,所以可以直接通过过滤的命令直接检索到相关文件,也可以通过把可疑的1.c文件翻译出来,也可以看见相关的文件创造信息,这个图是导出翻译后的1.c文件

这段代码是一个PAM模块的示例,用于在Linux系统中进行身份验证,并将用户名和密码保存到文件中。PAM(Pluggable Authentication Modules)是一种用于 Unix/Linux 系统的认证架构,允许灵活配置和管理用户认证过程。它通过调用配置的认证模块来验证用户身份,支持多种认证方式如基于文件、LDAP、数据库等,提供高度的定制性和安全性。

在后面捕获的流量中,实际上也是对输出的结果定向到/tmp/1.c文件中,然后对这个文件的不断操作,直到16

解码可得

写入/tmp/Makefile文件中

        这里用于编译一个名为"looter.so"的共享库。其中,CFLAGS变量包含了一些编译选项,如-Werror和-Wall,分别表示将所有警告视为错误和开启所有警告。接下来的规则定义了如何从"looter.c"源文件生成"looter.so"共享库。

再到21,执行了ls命令,可知多了looter.so文件,进行了编译

        到这里,大致就可以知道,这个可疑的文件是什么了。因为我是小白,所以选择用这种麻烦的方法来分析攻击的流程,如果是以找这个文件为目的的话,可以直接用http contains ".so"命令查找这个文件,因为这里题目已经给了文件后缀,这里查找了以后,直接筛选一下就可以了

也可以直接定位到这个流,然后找到这个目标文件

所以答案是:looter.so

第六题:

这里还是按照第五题的思路,先继续分析,流量的内容,然后再直接出找的方法

22

looter.so复制到/lib/x86_64-linux-gnu/security/路径下

23ls命令,检查目录

实际上24,25都是直接输出字符串

26 将输出的字符auth optional looter.so添加到/etc/pam.d/common-auth内容的后面

其实到这里就可以直接得到第六题答案的路径了,就是/etc/pam.d/common-auth

因为它把字符添加进了这文件路径里面

        然后呢,是比较快的方法,因为通过之前题目的分析和对流量的筛选,发现该系统为linux系统,/etc为linux中默认的系统配置文件存放目录。可通过查看http协议中包含/etc的流量包来发现黑客修该的配置文件及绝对路径。简单的来说,就是筛选有etc的流量

也能通过这些流量的分析来找到路径

答案:/etc/pam.d/common-auth

知识点

http协议和tcp协议

  1. TCP 协议

    • TCP 是一种面向连接的、可靠的传输协议,它位于 OSI 模型的传输层(第四层)。
    • TCP 主要负责在网络中可靠地传输数据。它通过数据包的序列号、确认和重传机制来确保数据的完整性和可靠性。
    • TCP 提供了流控制、拥塞控制和错误恢复等功能,这些功能使得它在面对不可靠的 IP 网络时能够提供可靠的数据传输。
  2. HTTP 协议

    • HTTP 是一种应用层协议,它基于 TCP 协议构建,位于 OSI 模型的应用层(第七层)。
    • HTTP 负责定义客户端和服务器之间的通信规则,用于在客户端和服务器之间传输超文本文档(如 HTML 页面)、图片、视频、音频等资源。
    • HTTP 是无状态的协议,即每次请求和响应之间是相互独立的,服务器不会保留之前请求的任何信息,因此需要使用 Cookie、Session 等机制来维护状态。

关系与互动:

  • TCP 在 HTTP 中的作用:HTTP 协议的通信过程依赖于底层的 TCP 连接。当客户端(如浏览器)发送 HTTP 请求时,它会通过底层的 TCP 连接将请求数据发送给服务器。服务器接收到请求后,通过同一 TCP 连接向客户端发送 HTTP 响应。
  • 连接管理:HTTP 使用 TCP 的连接管理功能来确保数据的可靠传输。客户端和服务器在通信时会建立一个 TCP 连接,通过这个连接进行数据传输,并在传输结束后释放连接,以便其他客户端可以使用该连接。
  • 多路复用:HTTP/1.1 引入了持久连接,即客户端和服务器在同一个 TCP 连接上可以发送多个 HTTP 请求和响应,避免了重复建立和释放连接的开销,提高了性能。
  • 传输效率:TCP 的可靠性和流控制机制确保了 HTTP 数据的安全和完整性传输,这对于如今大量传输大型资源(如图片、视频)的 Web 应用至关重要。

综上所述,HTTP 和 TCP 是紧密相关的两个协议,TCP 提供了底层的数据传输保障,而 HTTP 则定义了如何使用这些传输服务进行高级应用层通信。在日常的网页浏览和数据交换中,它们协同工作以提供快速、可靠的网络服务。

JWT

        JWT:头部、载荷和签名三段数据以.分隔,通过base64进行加密。第一部分header,放入token的类型(“JWT”)和算法名称(RS256等);第二部分payload,放入用户的不敏感信息(用户id等);第三部分signature,根据不公开的秘钥加上header中声明的算法,生成特定的签名。最终三部分组合起来即形成了token,发送给客户端。

whoami

   whoami 是一个用于显示当前登录用户用户名的命令。在大多数操作系统中,包括 Unix/Linux 和 Windows,whoami 命令通常用于获取当前会话的用户标识信息。

具体来说:

  • 在 Unix/Linux 系统中,whoami 命令会简单地显示当前有效用户的用户名。
  • 在 Windows 系统中,whoami 命令显示当前用户的用户名和用户组成员资格信息。

在命令行中,whoami 不需要任何参数或选项,只需输入命令即可。

例如,在 Unix/Linux 终端中执行 whoami

$ whoami username 

这里的 username 就是当前登录用户的用户名。

在 Windows 命令提示符中执行 whoami

C:\> whoami domain\username 

这里的 domain\username 则显示了当前用户所属的域名(如果有)以及用户名。

总之,whoami 命令是一个简单且实用的工具,用于快速查看当前操作系统会话中的用户身份信息。

PAM

PAM(Pluggable Authentication Modules)是一种用于 Unix/Linux 系统的认证架构,允许灵活配置和管理用户认证过程。它通过调用配置的认证模块来验证用户身份,支持多种认证方式如基于文件、LDAP、数据库等,提供高度的定制性和安全性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/710876.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

二层弹出框,点掉小弹出框后,遮罩层没有消失

解决办法把 父元素的vue实例对象的,最后一个元素删除。删除的就是遮罩层元素 thus.$ refs.dialig.$ parent.$ el.lastChild. remove()

dbForge Studioor MySQL v6 解锁版 安装教程(MYSQL数据库客户端)

前言 dbForge Studioor MySQL是一个在Windows平台被广泛使用的MySQL客户端,它能够使MySQL开发人员和管理人员在一个方便的环境中与他人一起完成创建和执行查询,开发和调试MySQL程序,自动化管理MySQL数据库对象等工作。 一、下载地址 下载链…

香橙派AIpro测试SPI通信

香橙派AIpro开发板上有一个SPI接口,如下图红框所示, 系统启动后,其对应的设备是 /dev/spidev0.0 一 硬件回环测试 香橙派AIpro上的系统自带spidev_test工具,非常方便,可以查看其帮助信息,如下&#xff0c…

探索AIGC与3D技术的融合:从图像到可探索的3D动态场景

随着人工智能和计算机图形技术的飞速发展,AIGC(人工智能生成内容)与3D技术的结合正在为我们打开一扇全新的创意之门。最近,我深入研究了几个令人兴奋的AIGC+3D方案,它们不仅展示了从单张图片或文本提示生成3D点云的强大能力,还进一步实现了AI虚拟试穿和生成高保真3D数字人…

金融与大模型:引领行业未来的创新融合

前言 在数字化浪潮席卷全球的今天,金融与大模型的结合正成为行业发展的新引擎。这种融合不仅为金融机构带来了前所未有的效率和准确性,也为金融市场的稳定与发展注入了新的活力。本文将基于当前的市场现状,结合金融环境的发展,深…

【docker实战】使用代理的坑

在docker公共仓库被封禁的日子里,大多数人更喜欢使用镜像仓库代理源。 网上教程一大把,似乎不使用代理,就不会使用docker一样。 上图就是我设置的代理源镜像仓库。通常是设置/etc/docker/daemon.json这个文件实现的。 这样设置之后&#xff0…

【MySQL】索引(上)

https://www.wolai.com/curry00/fzTPy3kSsMDEgEcdvo4G5w https://www.bilibili.com/video/BV1Kr4y1i7ru/?p69 https://jimhackking.github.io/%E8%BF%90%E7%BB%B4/MySQL%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/#%E7%B4%A2%E5%BC%95 索引是一种用于快速查询和检索数据的数据结构…

echarts写某个市地图

const geoJSON {"type":"FeatureCollection","features":[{"type":"Feature","properties":{"adcode":440303,"name":"罗湖区","center":[114.123885,22.555341],"…

照明灯具哪个品牌好,一文详细带你了解照明灯具种类有哪些

在孩子学习过程中,有一样物品的重要性不容忽视,那就是一盏提供舒适光源的照明灯具。那么照明灯具哪个品牌好?面对不断增加的学业负担,孩子们经常需要在夜晚借助台灯的光亮进行学习,这已经成为了家庭生活中普遍的情景。…

【全开源】多功能投票小程序源码(Uniapp+ThinkPHP+FastAdmin)

💥**【热门推荐】多功能投票小程序,一键解决你的选择难题!**💥 基于ThinkPHPFastAdminUniapp开发的多功能系统,支持图文投票、自定义选手报名内容、自定义主题色、礼物功能(高级授权)、弹幕功能(高级授权)、会员发布、…

FullCalendar日历组件集成实战(15)

背景 有一些应用系统或应用功能,如日程管理、任务管理需要使用到日历组件。虽然Element Plus也提供了日历组件,但功能比较简单,用来做数据展现勉强可用。但如果需要进行复杂的数据展示,以及互动操作如通过点击添加事件&#xff0…

面向对象编程垃圾回收机制

系列文章目录 文章目录 系列文章目录前言一、垃圾回收机制(Garbage Collection) 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用…

在AWS上运行的EKS Elastic Kubernetes Service 创建集群Cluster,Node group, Nodes

1. 前提条件 AWS Account: https://aws.amazon.com/free/Installing KubeCtl CLI https://docs.aws.amazon.com/eks/latest/userguide/getting-started-eksctl.htmlEKS Cluster RoleIAM Role for Node GroupVPCEC2 Key Pair which can be used to SSH to the worker nodesAWS …

植物ATAC-seq文献集锦(三)——果实发育篇

ATAC-seq在植物研究领域的应用我们已经介绍2期了,本期我们聚焦ATAC-seq技术在果实发育方向的应用案例。 植物ATAC-seq文献集锦(一)——基因组篇 植物ATAC-seq文献集锦(二)——生长发育篇 文献一:Ident…

论文阅读笔记:Cross-Image Relational Knowledge Distillation for Semantic Segmentation

论文阅读笔记:Cross-Image Relational Knowledge Distillation for Semantic Segmentation 1 背景2 创新点3 方法4 模块4.1 预备知识4.2 跨图像关系知识蒸馏4.3 Memory-based像素到像素蒸馏4.4 Memory-based像素到区域蒸馏4.5 整体框架 5 效果 论文:http…

Visual Studio Code远程linux计算云

一、前置条件 本机安装Visual Studio Code 打开Vscode时建议使用管理员权限打开,在这之前遇到了一些报错。 二、开始远程连接计算云 安装插件remote-ssh 2.点击远程资源管理器,之后在SSH这行的右侧,点击“”号,去新建远程 3.在窗…

CCAA质量管理【学习笔记】​​ 备考知识点笔记(二)

第三节 GB/T19001-2016 标准正文 本节为ISO9001:2015 标准条款的正文内容,各条款中的术语参照上节内容理解时,会很轻松。本节不再一一对各条款讲解。 引 言 0.1 总 则 采用质量管理体系是组织的一项战略决策,能够帮助其提高整体绩效…

进程的创建和管理

一. 实验内容 1. 编写一个程序,程序中创建一个子进程。然后父、子进程各自独立运行,父进程不断地在标准输出设备(即显示器)上输出字母p和回车(输出30次或以上),子进程不断地在标准输…

iOS 18 中全新 SwiftData 重装升级,其中一个功能保证你们“爱不释手”

概览 在最新的 WWDC 2024 中,苹果对多个系统框架都做了重量级的功能升级。这怎么能够少了 SwiftData 这位“后起之秀”呢? 万象更新的 iOS 18 为 SwiftData 增加了全新的唯一性、自定义数据仓库、富表达式以及字段索引等超赞功能。 在本篇博文中&#…

植物大战僵尸杂交版 v2.0.88 mac版 Plants vs. Zombies 杂交版下载

特别注意:该游戏最低系统要求为macOS Sonoma 14.X,低于此系统版本的请勿下载! 游戏介绍 植物大战僵尸杂交版是由B站UP主“潜艇伟伟迷”制作的一款结合了《植物大战僵尸》原有元素与创新玩法的游戏。这款游戏以其独特的“杂交”植物概念在B站…