'2018/09/03'에 해당되는 글 2건


M1 – 적절하지 않은 플랫폼 사용

앱 설치시 안정성

 

 

M2 – 취약한 데이터 저장소

M3 – 취약한 통신

중요정보 노출, 암호화 방식

 

M4 – 취약한 인증

 

M5 – 취약한 암호화

메모리값 패킹, 난독화

 

M6 – 취약한 권한 부여

M7 – 취약한 코드 품질

 

 

M8 – 코드 변조

스마트폰 탈옥 Rooting

 

M9 – 리버스 엔지니어링

M10 – 불필요한 기능

과도한 권한 설정

블로그 이미지

iesay

,

출처 :   https://www.lesstif.com/pages/viewpage.action?pageId=20775577

 

워드프레스는 DB에 html과 Css를 집어 넣은걸

호출하여 보여주는 형태이다.

 

서버 마이스레이션은 뻔하다.

이미지와 html , css의 프론트

웹스크립트언어와 DB의 백엔드 두개만 넣으면 끝아야 된다.

 

 

vmware에서 붙여보고 나중에 AWS로 이관 하기로 했다.

 

우분투에서 vmware에서 우선 진행하였다.

서버 스펙 : ubuntu-16.04.4-server

 

1] ssh설치

   apt-get install openssh-server

   service sshd start


2]아파치2 설치
  apt-get install apache2 -y


3] php7설치


apt-get install php7.2

apt-add-repository ppa:ondrej/php
apt install php7.2 libapache2-mod-php7.2 php7.2-mbstring php-xml php-mysql php-sqlite3
apt-get update

 

4] maria 설치
apt-get install mariadb-server
apt-get install mariadb-server-core
apt-get install mariadb-client

테이블을 제작하고 DB를 밀어 넣자.

create database DB명;

 

리모트mysql-workbench를 이용하기 위해서 외부에서 접근 가능 하도록 구축


create user '계졍명'@'%' identified by '패스워드';
grant all on 계정명.* to '계정명'@'%';

flush privileges;

 

use 계정명;

show tables;

테이블이 없는걸 확인 하자.

 

 

DocumentRoot는  우분투 기본인

/var/www/html

service apache2 start 하여  php7이 잘 올라오는지 확인 해야 된다.

phpinfo로 설치가 완료 되었으면

소스코드(html, css, php) 이미지를 업로드 하자.

 

여기까지는 그나마 무난했다 30분 이내 생초보도 할수 있는 부분이고 이제 대망의 DB작업을 실사하자 .

 

문제는 여기서 DB이다. 그것도 html소스가 박힌 DB

왜 html소스가 박힌 DB가 어렵나면 게시판에 내용도

칼럼에 데이터가 너무 길경우 개행문자에 대한 처리 부분과

정규식부분(괄호, 특수문자)에서 처리가 되었다고 하지만

잘 안들어 가게 된다.

한글까지 포함 된다면 머 한줄 한줄 밀어 넣어야 되는 최악의 사태도 발생할수 있다.

 

덤프는 PhpMyadmin에서 내보내기 하면 된다.

내보내기 한 파일 쿼리 sql 

1] 콘솔에서 밀어 넣어보았다

 실패 mysqldump -u 계정명 -p  디비명 < 쿼리.sql

 

2] PhpMyadmin을 구축하였다 30메가인데 덤브파일이

  25메가 밖에 업로드가 안된다고 한다. 패스

  zip파일에서 압축해서

php.ini에서 용량 늘리기 가능함

  file_uploads = On
 upload_max_filesize = 100M
 post_max_size = 100M

 

 

3] mysql콘솔에 복사 붙이기 해보았다. 
   3시간 정도 걸리던데 결국 html소스들 때문에 삽입은 되었으나

  정상적으로 작동이 불가능 했다.

  (여기서 너무 많은 시간을 허비 했다)

 

4] index.html소스만 복사해서 붙여 보았다. 당연 반응형에서

   제대로 동작 안하였고 실패

 

5] mysql-workbench를 구축 하였다.

   비주얼 툴도 머 이상한거 설치하고

./mysql/mariadb.conf.d/50-server.cnf:bind-address    = 127.0.0.1 ->0.0.0.0

  으로 변경하였다.

마리아 DB최신 소스라서 검색한 경로에 없길래  grep으로 문자열 검색 하여 찾았다.

 

 

컨넥션이 완료되고  프로그램이 종료 되는것이다.

오라클 토드나,, ms-sql과 왜이렇게 다르지 했는데 프로그램 다시 실행하니

컨넥션 정보가 남아 있다 저길 클릭하고 들어 가야 된다.

 

덤프뜬 데이타베이스를 이쁘게 잘 밀어 넣었다.

제대로 동작할가?

제대로 동작한다면 서버이관 작업이 빡시다고 하지도 않는다.

이관전 디자이너는 아주 이쁘게도 3가지 타입의 코딩을 하였다

1] 호스팅주소코딩   2] dns코딩   3]상대경로 코딩

 

모두다 3번으로 코딩하면 아주 쉽게 끝날일을

1,2번을 수정해야 되었다.

 

여기서 방법이 2가지가 있다.

mysql-workbench에서 찾아 바뀌기 컨트롤+H해서 수정하는 방법이 있고

 

업로드 후라면 쿼리를 이용하는 방법도 있다.

 

스타트 URL과 홈페이지 주소이다 WP-admin에 있는것과 같은거다.

UPDATE wp_posts SET guid = replace(guid, '수정전','수정후');

 

소스코드 html소스이다.

UPDATE wp_posts SET post_content = replace(post_content, '수정전','수정후');
UPDATE wp_postmeta SET meta_value = replace(meta_value, '수정전','수정후');

 

wp-config.php 내용도 변경해야됨 마지막 부분에

 

/* DOMAIN SETTING */

/* DOMAIN SETTING */
define('WP_HOME','변경해야됨 ');
define('WP_SITEURL','변경해야됨 ');

 


vmware에서는 이관이 다 완료 되었다.

문제는 AWS에 이관할려니 mysql-workbench가 당연히 안붙는다 AWS방화벽도 해제 해도 마찬가지다.

 

phpmyAdmin을 다시 구축하였다 콘솔로는 답이 없기 때문에

문구를 자세히 읽어 보니

압축한 파일에 대해서는 25메가가 가능하다고 나온다. 그래서 내 파일을 zip으로 압축해 보았다.

2메가가 되는것이다.

 

text다 보니 압축도 잘된다.

바로 import시키니 잘 붙는다.

 

멘탈만 안나갔으면 2번에서 쉽게 끝날일을 삽질을 좀 많이 했다.

나와 같은 삽질을 하지말라고 이 게시물을 포스팅 한다.

 

그리고 워드프레스  wp-admin에서 화면 편집이 위저드 처럼 가능하다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'' 카테고리의 다른 글

정규식 표현 정리  (0) 2019.03.28
DB에 웹쉘코드 삽입 POC  (0) 2018.12.06
PHPMailer 구글 SMTP 메일 보내기  (0) 2018.08.23
리눅스 서버 이관 작업  (0) 2017.10.26
WeB 서버 튜닝  (0) 2015.12.04
블로그 이미지

iesay

,