2017. 10. 16. 14:02ㆍ보안 & 해킹/모의 침투
mysql에서 OS command를 실행할 수 있는 방법
출처 : https://github.com/mysqludf/lib_mysqludf_sys
: lib_mysqludf_sys.c 만 받으면 됨
소스 복사>
cp lib_mysqludf_sys.c /usr/local/mysql/include/
cd /usr/local/mysql/include
컴파일>
gcc -m64 -fPIC -Wall -I/usr/include/mysql -I. -shared lib_mysqludf_sys.c -o /usr/local/mysql/lib/plugin/lib_mysqludf_sys.so
접속>
mysql -uroot -p
use mysql
function 생성>
CREATE FUNCTION lib_mysqludf_sys_info RETURNS string SONAME 'lib_mysqludf_sys.so';
CREATE FUNCTION sys_get RETURNS string SONAME 'lib_mysqludf_sys.so';
CREATE FUNCTION sys_set RETURNS int SONAME 'lib_mysqludf_sys.so';
CREATE FUNCTION sys_eval RETURNS string SONAME 'lib_mysqludf_sys.so';
CREATE FUNCTION sys_exec RETURNS int SONAME 'lib_mysqludf_sys.so';
DROP FUNCTION IF EXISTS lib_mysqludf_sys_info;
DROP FUNCTION IF EXISTS sys_get;
DROP FUNCTION IF EXISTS sys_set;
DROP FUNCTION IF EXISTS sys_exec;
DROP FUNCTION IF EXISTS sys_eval;
function 확인>
select * from mysql.func;
실행 테스트>
select sys_eval('df -h') from dual;
load average
uptime | awk '{print $8}' | sed '$s/.$//'
memory 사용량
free | grep Mem | awk '{print $3}'
memory 전체
free | grep Mem | awk '{print $2}'
cpu 사용율
mpstat | tail -1 | awk '{print 100-$11}'
-------------
insert into kim_test
select sys_eval("uptime | awk '{print $8}' | sed '$s/.$//'") ;
insert into kim_test
select sys_eval("free | grep Mem | awk '{print $3}'") ;
insert into kim_test
select sys_eval("mpstat | tail -1 | awk '{print 100-$11}'") ;
'보안 & 해킹 > 모의 침투' 카테고리의 다른 글
01.파워셸의 악의적 활용 및 로컬 관리자 계정 획득 (0) | 2018.08.28 |
---|---|
도구를 사용한 기업정보 수집 (Discover script, Spider Foot) (0) | 2018.01.02 |
방화벽 탐지, 그리고 방화벽 뒤의 네트워크 확인 (0) | 2017.10.13 |
bypass (0) | 2017.09.25 |
넥서스5 칼리리눅스 넷헌터 완벽 설치 메뉴얼 (9) | 2017.06.06 |