phpMyAdmin 설치 및 취약점

리눅스 서버에 MySQL 또는 MariaDB, PostgreSQL 설치 후 좀 더 편리한 DB 관리를 위해 phpMyAdmin 설치 후 사용하는 경우가 많습니다. 기본적인 phpMyAdmin 설치와 취약점에 대해서 알아 보도록 하겠습니다.

phpMyAdmin 설치 방법

RedHat 기반의 OS 버전인 RockyLinux 및 AlmaLinux에서의 설치가 가능하며, AlmaLinux 9.3에서 설치를 진행했습니다.

PHP 7.1 이상, MySQL 5.6(MariaDB 10.0) 이상이라면 phpMyAdmin 5.0 이상의 버전을 설치할 수 있으며, 그 이하 버전을 설치해서 사용할 이유는 딱히 없습니다. 웹사이트에 접속 후 원하는 버전의 링크를 복사 해 줍니다.

phpMyAdmin 설치를 위한 웹페이지(phpmyadmin.net)

1. 설치

5.21 버전으로 설치를 진행하였습니다.

cd /home/호스트ID/www
wget https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.zip
unzip phpMyAdmin-5.2.1-all-languages.zip
mv phpMyAdmin-5.2.1-all-languages phpMyAdmin

다운로드 후 순서대로 압축 해제 및 폴더 명 변경을 진행합니다.

2. 접속

http://MyDomain.com/phpMyAdmin/ 으로 접속해서 정상 설치 여부를 확인해 줍니다.

phpMyAdmin 로그인 화면

phpMyAdmin 취약점

phpMyAdmin은 웹으로 접속하여 DB 관리를 하게 되기 때문에 URL에 파일 경로가 포함되어 사용자가 웹 서버의 파일을 열람할 수 있게 되는 phpmyadmin File Inclusion 취약점이 발생합니다. 대량의 로그인 접속 시도 등의 해킹 시도가 발생할 수 있습니다.

파일명을 변경하는 방법보다 접속을 하지 않을 때는 파일의 퍼미션을 000으로 변경해서 접속 자체를 차단하는 것이 가장 좋다고 생각합니다.

Similar Posts

  • 오라클 데이터베이스(Oracle Database)

    목차phpMyAdmin 설치 방법1. 설치2. 접속phpMyAdmin 취약점오라클 데이터베이스 오라클 데이터베이스(Oracle Database 또는 Oracle RDBMS)는 미국 오라클(Oracle) 사의 관계형 데이터베이스 관리 시스템(relational database management system, RDBMS)입니다. Windows Server, Unix 및 다양한 GNU/Linux 배포판을 포함한 운영 체제의 다양한 하드웨어에서 실행될 수 있습니다. Oracle Database에는 다른 플랫폼의 애플리케이션이 Oracle Database와 원활하게 통신할 수 있도록 하는 네트워킹 스택이 있습니다. 예를…

  • MariaDB root 패스워드 분실 : mariadb or MySQL 패스워드 초기화

    MariaDB root 패스워드 분실(또는 MySQL)로 인해 로그인이 불가능한 경우mariadb&MySQL 패스워드 초기화가 필요합니다. 데몬에 대한 정지 및 시작 등의 구동 권한이 있다면 패스워드 초기화를 진행해서 재 설정이 가능합니다. 목차phpMyAdmin 설치 방법1. 설치2. 접속phpMyAdmin 취약점✅ MariaDB root 패스워드 분실 시 확인 메시지 콘솔에서 MariaDB 또는 MySQL 접속 시 패스워드를 분실 했을 때 잘못 입력한 패스워드로…

  • SQL: 테이블 구조, 쿼리(Query), 저장 프로시저(3가지 분류)

    목차phpMyAdmin 설치 방법1. 설치2. 접속phpMyAdmin 취약점✅ SQL이란? SQL(Structured Query Language)은 구조화된 질의 언어의 뜻을 가지고 있습니다. 구조적 쿼리 언어(SQL)는 관계형 데이터베이스에 정보를 저장하고 처리하기 위한 프로그래밍 언어입니다. 관계형 데이터베이스는 정보를 표 형식으로 저장하며, 행과 열은 다양한 데이터 속성과 데이터 값 간의 다양한 관계를 나타냅니다. ✅ SQL 시스템의 구성 요소 SQL 시스템은 테이블, 쿼리,…

  • MySQL: Grant All Privileges 쿼리문

    MySQL에서 ‘Grant All Privileges’ 명령어는 유저가 데이터베이스에 접근할 수 있는 권한을 부여할 때 사용합니다. test라는 데이터베이스의 모든 테이블(*)에 testuser가 외부에서의 접근을 허용하는 것을 의미합니다. 목차phpMyAdmin 설치 방법1. 설치2. 접속phpMyAdmin 취약점Grant All Privileges 호스트 예시 MySQL Grant All Privileges는 사용자 계정에 MySQL 작업을 규제하고 실행할 수 있는 권한을 부여하는 관리 명령문입니다. 새로운 사용자가 CREATE USER…

  • DB Query | SQL Statement(SQL 문) | 쿼리문 | 기본 문법

    DB QuerySQL Statement(SQL 문)는 MySQL, MariaDB 등과 같은 데이터베이스 관리 시스템(DBMS:Database Management System: DBMS)에서 사용되며, MySQL Query, SQL 명령어, SQL 쿼리, Mysql 명령어 등 다양한 형식으로 불리고 있습니다. 쿼리문은 명령의 역할에 따라 3가지로 분류합니다. 업무를 보면서 당장에 인식하고 사용하지 않더라도 차츰 이해하고 사용한다면 도움이 될 수도 있다고 생각합니다. 목차phpMyAdmin 설치 방법1. 설치2. 접속phpMyAdmin…

  • 데이터베이스; DBMS, SQL 이해

    목차phpMyAdmin 설치 방법1. 설치2. 접속phpMyAdmin 취약점 1. 데이터베이스란 데이터베이스(DataBase:DB)는 데이터가 모여 있는 저장소입니다. 저장소는 구조화 된 정보 또는 데이터의 조직화 되어 있는 모음입니다. 데이터베이스에는 IT를 포함한 여러 분야에서 폭 넓게 사용되고 있습니다. 카카오톡이나 네이버 라인 등을 이용해 발송한 메시지, 버스/지하철의 교통카드, 네이버 쇼핑 및 네이버 주문 등을 통해 구매한 정보 등이 모두 DataBase에…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 7   +   5   =