使用阿里云服务器部署项目注意点若干 首次部署建议查看!!
- 一.云服务器使用yum源安装mysql
- 二.云服务器安装虚拟环境vittualenvwrapper时报错
- 三.使用gunicorn部署项目时无法部署
- 四. Navicat连接云服务Mysql 3306端口
- 五.项目从Pycharm同步至Linux
* - (1).可以使用scp 复制整个项目
- (2).可以使用Linux rz接受项目
- (3).从Gitee上直接Clone至Linux
- (4).使用Pycharm的Deployment传输
一.云服务器使用yum源安装mysql
需要安装mysql 与 mysql-server
yum install mysql
yum install mysql-server
需要注意如果云服务器版本是Centos7系列,直接
yum install mysql-server
会提示找不到mysql-server的下载地址。
这时候我们必须先添加mysql社区repo通过输入命令:
sudo rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
然后再进行yum安装即可
二.云服务器安装虚拟环境vittualenvwrapper时报错
因为我们部署的项目可能不止有一个,所以我们最好使用虚拟环境部署:
pip install virtualenv
pip install virtualenvwrapper
但是在
pip install virtualenvwrapper
的时候提示报错:
pip安装软件时出现:Command “python setup.py egg_info” failed with error code 1 in /tmp/pip-build-*(其中×与要安装的软件有关)
比如安装pip install pyparsing==1.5.7出现以下错误: Command “python setup.py egg_info” failed with error code 1 in /tmp/pip-build-WImLdR/pyparsing/
这时候发现是pip的版本问题
我们可以使用如下代码解决:
sudo python3 -m pip install --upgrade --force pip
sudo pip3 install setuptools==33.1.1
三.使用gunicorn部署项目时无法部署
使用一个简单的flask app demo测试:
helloworld.py:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'helloworld!'
if __name__ == '__main__':
app.run()
gunicorn语法:
gunicorn -w +启动的进程数 -b 绑定的ip和端口 文件名+Flask实例名称 可以加上-D 在后台运行
这时候我们必须使用:
gunicorn -w 2 -b 127.0.0.1:5000 helloworld:app
注意:
helloworld.py 找个文件必须存在 且必须以.py结尾 但是上面命令不需要打.py
Navicat 设置:
这里需要设置常规和SSH连接。
在常规里输入localhost 用户名 和 密码
在SSH连接中 输入你的公网IP 云服务器账户和云服务器密码


; 五.项目从Pycharm同步至Linux
(1).可以使用scp 复制整个项目
拿复制Pycharm环境举例:
pip freeze > requirement.txt
scp ./requirements.txt root@123.57.145.24:~/
然后输入云服务器密码 即可成功
(2).可以使用Linux rz接受项目
yum install lrzsz -y
再rz 将整个项目上传到LInux
(3).从Gitee上直接Clone至Linux
如果你的项目同步至Gitee,可以前往自己的仓库复制自己的仓库地址
再使用语句:
git clone +你的仓库地址
下载到Linux中
(4).使用Pycharm的Deployment传输

注意 配置时不要使用FTP传输 直接配置SFTP 使用ssh端口进行传输
记得在云服务器安全组规则中配置22端口等开放

配置完成之后,可以右键项目直接进行Deployment部署

感谢各位看官!!!

Original: https://blog.csdn.net/m0_55724788/article/details/123149464
Author: 小熊嗑代码
Title: 使用阿里云服务器部署项目注意点若干(首次部署建议查看~)
相关阅读
Title: HTB-Late
HTB-Late
信息收集
nmap

dirbuster

gobuster

收集的信息有点少。是不是少了什么东西?
[En]
The information collected is a little small. Is there something missing?

有一个处理在线图片的网页,但我无法访问它。
[En]
There is a web page that processes pictures online, but I can’t visit it.

手动添加dns以后即可访问

查看描述是一种将图片中的文本转换为文本并上传的功能。
[En]
Look at the description is a function to convert the text in the picture into text and upload it for fun.

感觉已经很明显了需要上传shel,不过先要找到上传文件的位置。

等等……Flask?该不会存在SSTI吧

; 开机
首先在目录尝试SSTI

想试试直接在图片里面弄个SSTI文本上传会怎么样,结果还被发现了。

试着混合几个字母,到目前为止是成功的。
[En]
Try mixing a bunch of letters, and it’s a success so far.

那么问题来了,接下来怎么构造一个SSTI呢,有一个小的方法就是面对搜索引擎学习。


因为
flask
中默认的模板引擎是 Jinja2
,还是有点多,我在多个区域随机选一个测试。
经过简单的测试,发现已经检查了一些字符。
[En]
After a simple test, it is found that some characters have been checked.

看来,对一些人物的判断会有误。
[En]
It seems that there will be errors in the judgment of some characters.

我让报错位置弄三个
"_"
它识别出来三个 "_"
,我弄两个 “_”
,它又只识别出来一个,估计是字体问题,没办法只能继续测试 。
找到一种匹配图片识别的方法,并最终测试这一点,需要花费大量的时间。
[En]
It takes a lot of time to find a way to match the picture recognition, and finally test this.


但这种认识确实需要耐心和慢慢来。
[En]
But this recognition really requires patience and take your time.

原打算用python socket反shell,然而……
原文件是这样


并且目标也收到了

然而我去看目标收到的文件内容,它把
"
给我转化为了unicode码 "
, #
后面直接被注释没了。好吧我真的很感谢它。

换方法,要么用短小精悍的反弹语句,要么还可以找到私钥用ssh。因为前面得知了用户
svc_acc
。先用ssh吧,找到用户文件里的.ssh看看有没有用户的私钥。


找到私钥,把它打出来。



提权
首先不知道密码 sudo -l也就看不了,没有sudoers的权限,history也只有自己的。

再找找这个与这个用户有关的所有文件,
-type f
搜索普通文件先用
find / -type f -user svc_acc > svc_acc_file
把有关用户的名单弄进去,再用 grep -v "Permission denied" svc_acc_file
过滤掉没有权限访问的文件。在一堆滚动的字符中看到了
/usr/local/sbin/ssh-alert.sh
。
如果嫌麻烦可以用
LinEnum.sh
,但是我的 LinEnum.sh
貌似没有找到那个文件。
简单分析一下,就是会给root@late.htb发送ssh相关的信息,
可以看看此用户的权限有读和执行但是没有写入权。

再来认识个命令
lsattr
用来显示文档的隐藏属性,如果用 chattr
给了隐藏属性就可以用 lsattr
查看。
有个有关lsattr的网站可以去看看,里面也有细致的参数说明那些。

可以看到有a和e,我们主要关注a,简单来说就是可以附加,也就是说我们可以在那个文件后面附加一段代码。

所以我之前复制了python socket的反弹代码不想浪费了,正好拿来用了,当然可以用/dev/tcp连接。

然后记住这个
shell.py
和 ssh-alert.sh
,我的反弹脚本在
而要附加的文件在

所以如果要让
sh
运行 shell.py
就需要准确位置 ../../../home/svc_acc/shell.py
。
因为这个
sh
可能会在ssh启动的时候才会执行,所以先弄个进程循环,再用ssh登录看看是否如此,能看到使用ssh登陆的时候会自动执行 sh
。
先退出ssh,开个nc,再连接ssh,动作尽量要快点,估计又有时间任务。


root后去查看 crontab
。

每分钟都会执行
/root/scripts/cron.sh
这个文件。
Original: https://blog.csdn.net/qq_37370714/article/details/126267453
Author: 永远是深夜有多好。
Title: HTB-Late
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/307089/
转载文章受原作者版权保护。转载请注明原作者出处!