本文来源:
https://xz.aliyun.com/t/15584?time__1311=Gqjxn7it0%3DnDlxGgx%2BOxmEr%2BG8B1wo3x
应用获取
应用获取分几个途径吧,
-
官网申请试用,让公司的运营部门配合。
-
从客户那里经过同意后,拷贝一份。
-
朋友圈获取
环境搭建
获取到应用程序后,还需要进一步搭建环境。通常获取到的是一个虚拟机形式,直接启动就可以使用。无需过多搭建。
源码获取
提供的虚拟机是一个封闭的环境,阉割掉了很多东西,正常情况下无法直接获取源码。不过还好,是在虚拟机中,可尝试的方法有很多。
尝试的第一种方法,在启动的时候,进入引导编辑模式。在如下页面,按照提示按“e”进入编辑模式
在Linux
一行(有些系统是linux16
开头的行)的末尾加入init=/bin/sh
,这条命令意思是在启动系统的时候先启动一个命令行。
之后再按照提示,按Ctrl-x
启动。看到root权限的时候,我以为我成功了,已经开始激动了。
由于此时系统还没有真的启动,应用也没有启动,现在要做的是修改root的密码,然后从正常渠道启动的系统里边登录root用户。给root用户修改密码的时候,提示是只读系统,不能修改。
网上找了点资料,说是让读写的模式重新挂载系统盘,之后再进行密码修改。
// 读写模式挂载
mount -o remount,rw /sysroot
// 进入挂载的盘
chroot /sysroot
目录不存在,直接读写的模式挂载根目录。再次尝试修改密码,仍然不行。
会不会是挂载的盘不对?列出系统有哪些盘,没这个命令。
lsblk
修改不了root密码就算了,直接看源码吧,命令行审计代码也就麻烦点。看来是我想简单,没有找到文件?
后来又从网上看到一种救援模式,再次尝试。
添加iso镜像。正常情况厂商是不提供iso镜像的,有了镜像不就等于有了源码?我们可以大致猜测下虚拟机的系统是什么系统,然后找个对应的镜像系统就行。我这里找了个Centos8
选择打开电源进入固件
用+
号把CD-ROM Drive
选项移到最上边。然后按F10
保存并重启
重新启动后,依次选择Troubleshooting
->Rescue a CentOS system
选择选项1
,之后回车。正常情况下,是可以检测出系统盘的,这里没有。这是因为使用的镜像和系统不是一个版本,需要相同版本的才行。
其他人的
不过没关系,接着往下。
现在可以使用lsblk
命令了,查看一下分区情况。
接下来就是一个个遍历挂载,然后一个个列文件,一步步找到源码
// 创建挂载点
mkdir /mnt/old
// 挂载盘符
mount /dev/sda1 /mnt/old
// 列文件
ls -al /mnt/old/
最终在sda5
找到web代码
php文件,接下来就可以开始愉快的审计了
代码审计渗透测试训练营试听活动
代码审计+渗透测试训练营课程介绍
渗透测试分为SRC信息收集、常见漏洞利用绕过深度讲解、Windows、Linu权限提升、权限维持四大模块。
PHP代码审计为三个阶段,第一阶段讲解基础,第二阶段实战漏洞靶场原理和过滤绕过源码分析,第三阶段实战挖掘CMS和设备0day。
本次训练营课程深度融合黑盒+白盒渗透测试,更深层次了解漏洞产生的原因、利用方法。提升大家的漏洞挖掘深度以及对漏洞的更深层次的理解。
挖到漏洞后可通过合法途径帮助学员变现
原文始发于微信公众号(道一安全):如何对安全设备进行代码审计
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论