목록전체 글 (385)
만족

가령 새로운 문의사항이 있다거나, 서버의 컴퓨팅 자원 소모량이 갑자기 늘어날 때 항상 모니터링을 하고 있는 것이 아니기 때문에 즉시 인지하기 어렵다. 그렇다고 별도의 알림 서버를 구축하자니 시간과 비용이 만만치 않은데, 텔레그램에서 지원하는 봇 API 를 사용하면 간단히 구현할 수 있다. https://telegram.org/ 텔레그램 – 새로운 메시징의 시대 빠르고. 안전하며. 강력함 telegram.org 먼저 텔레그램 계정을 생성하고, 앱을 다운로드받는다. Bot 생성 BotFather를 검색하고 우측에 파란색 체크 아이콘이 이있는 봇(맨 위)을 선택한다. start또는 시작 버튼을 누르면 다음과 같은 채팅이 표시된다. /newbot을 입력하면 두 종류의 봇 이름을 결정하게 된다. 첫 번째 봇 이름..

갑자기 예고도 없이 서버가 다운되었다. 물론 서버 전원이 나간다거나 컴퓨팅 자원이 모두 소모된것은 아니고, 아파치 프로세스만 맛탱이가 간 상태였다. 보통 이런식으로 과부하가 걸리면 속도가 느려진다던가, 서버 자체가 다운되는 경우가 많았는데 이번에는 조금 달랐다. error.log 아파치에서 오류 발생 시 에러 로그를 기록하도록 설정해두었다. 각종 접근해서는 안되고, 애초에 존재하지도 않는 파일에 접근을 시도한 흔적이 잔뜩 남아 있었다. 정상적인 서비스 사용자들은 저 경로에 접근할 일이 전혀 없으며, /var/www/html에 직접 접근하는 방법은 ip를 이용해 접근할 때만 가능하므로, 명백한 공격 행위임을 알 수 있다. 또한 동일한 아이피가 아닌 여러 아이피로 번걸아가며 찔러보고 있다. 아이피 위치를 조..

Performance 만들어진 회귀모델이 얼마나 예측을 잘 해낼 수 있는지를 측정할 수 있는 몇 가지 지표가 있다. Performance: R square (R^2) R^2= 1- Sigma(y- Predict(y))^2 / Sigma(y- E(y))^2 = 1- Sigma(실제값- 예측값)^2/Sigma(실제값- 평균값)^2 (단 y: 실제값, Predict(y): 예측값, E(y): y의 실제 평균값) R^2는 위와 같이 구할 수 있으며, 값은 [0,1]사이값으로 나타난다. 값이 1에 가까울 수록 성능이 좋다는 것을 의미하며, 즉 예측 데이터가 실제 데이터에 얼마나 가깝게 예측되는지를 나타낸다. (Higher is better) Performance: Standard Error of Estimate ..

Deterministic Model (결정적 모델) 변수 간 관계가 명확하여 무작위성이 주는 영향이 없거나 미미한 경우 BMI지수를 계산할 때 BMI= 몸무게/(키^2) 로 계산한다. =>몸무게와 키 정보가 주어지면 정확하게 BMI값을 계산해낼 수 있다. =>무작위성이 없다 Probablistic Model (확률론적 모델) 무작위성이 존재하며 확률론적 모델은 결정적 모델과 오차(Random Error)가 합쳐져 구성된다. 수축기혈압을 계산할 때의 공식은 다음과 같다. SBP= 6* age+ ε (ε은 오차) => 수축기혈압은 나이와 연관이 있지만, 동일한 나이를 가진 사람 전부가 동일한 수축기혈압을 가지지는 않는다 => 20살인 어떤 사람은 SBP가 123일수도, 117일수도 있다. 오차 ε는 명시된 ..

머신러닝(ML; Machine Learning)이란? 경험을 통해 자동으로 개선(improve)시키는 컴퓨터 알고리즘으로, AI의 부분집합이다. ML: Types Unsupervised learning 라벨링되지 않은 데이터들을 가지고 스스로 알고리즘을 학습한다. (ex: 클러스터링 등) Supervised learning 라벨링된 데이터들을 가지고 알고리즘을 마든다. (ex: regression, classification 등) Supervised learning: Steps Supervised learning은 training step, testing step 두 단계로 나누어진다. Training step 트레이닝 데이터로부터 모델(알고리즘)을 만들어내는 단계 => y= f(x)에서 f를 만들어내는..

Similarity(유사도) 두 데이터가 얼마나 유사한지를 수치적으로 나타낸다. [0,1] 사이의 값으로 나타나며, 두 데이터가 높을수록 1에 가까운 수로 표현된다. Dissimilarity(비유사도) 두 데이터가 얼마나 다른지를 수치적으로 나타낸다 0이상의 값으로 나타나며 완전히 같을 경우 0으로 표현된다. (상한값은 데이터에 따라 다르다) Similarity vs Dissimilarity: Data type 데이터 타입에 따라 유사도와 비유사도를 표현하는 방법이 다르다. p, q를 각 데이터의 attribute라고 하자. Dissimilarity Similarity Nominal (순서가 없는 데이터; 직업) 같으면 0, 다르면 1 같으면 1, 다르면 0 Ordinal (순서가 있는 데이터; 옷 사이..

Covariance(공분산) 공분산은 두 변수가 변화할 때 어떤 연관성이 있는지를 나타내는 척도이다. => 한 변수가 변했을 때 다른 변수의 변화량에 얼마나 영향을 주는가? (ex: BMI지수와 성인병의 발병률은 어떤 연관성이 있는가?) 분산V= Sigma( (X-E)^2 ) / N= E((X- E(X))^2) 공분산Cov= E( (X-E(X) * (Y-E(Y)) ) 공분산은 각 변수가 각 평균에서 떨어진 만큼의 거리의 평균을 의미한다. 공분산 값(양수/음수)에 따라 어떤 연관성이 있는지를 알아낼 수 있다. 위와 같이 cov가 양수이면 X가 증가할 때 Y도 증가하고, cov가 음수이면 X가 증가할 때 Y는 감소하는 양상을 띈다. 그러나 cov의 절대값이 큰 것이 연관관계가 크다는 것을 의미하지는 않는다는..

Summary Statistics 데이터의 속성을 나타내는 숫자값이다. (평균, 표준편차 분산 등) Summary Statistics: Mean(평균) 데이터 값들의 합을 데이터 갯수로 나눈 값이다. 가장 흔하게 사용되지만 이상값에 민감하게 반응({0,0,0,1000}의 평균값은 250이다)하여 median(중간값), trimmed mean(이상값을 제외한 평균값)과 함께 사용된다. Summary Statistics: Median(중앙값) 정렬된 데이터셋의 중앙에 위치하는 값이다. 데이터의 갯수가 짝수개일 때는 중앙에 있는 값들을 더한 후 2로 나눈 값을 중앙값으로 사용한다. Symmetric Data vs Skewed Data 중앙값(Median), 최빈값(Mode), 평균값(Mean)이 모여있으면 S..
데이터란 무엇인가? 데이터셋은 데이터 오브젝트로 이루어진다. 데이터 오브젝트는 속성(attribute)에 의해 설명된다. 속성은 variable, field, characteristic dimensions, feature 등으로도 불린다. 상품명 상품가격 0 사과 1000 1 바나나 2000 위 표에서 상품명과 상품가격이 attribute가 되고, 각 열(row; index)가 object가 된다. Attribute 데이터 필드로써 데이터 오브젝트에서 문자나 특성으로 대표된다. Attr에는 여러 타입이 존재한다. Nominal Type 카테고리, 상태 등과 같은 순서가 없는 분류 타입을 말한다. 머리색, 직업 등이 Nominal type에 해당한다. Binary Type 2개의 Nominal attrib..
Numpy: ndarray numpy에서 제공하는 동일 타입의 다차원 배열 import numpy as np #길이가 15인 1차원 행렬 a= np.array(15) #3*5 2차원 배열로 재배열 a= a.reshape(3,5) #(행 갯수, 열 갯수) 반환 #(3,5) a.shape #차원 수 #3*5는 2차원 배열 a.ndim #각 열의 타입 a.dtype.name #각 열의 바이트 크기 a.itemsize #데이터 갯수; 행 갯수*열 갯수 #3*5= 15 a.size ndarray의 수학적 연산 #list를 ndarray로 변환 A= np.array([20,30,40,50]) #[0,1,2,3] B= np.arange(4) #행렬의 덧셈/뺄셈연산은 행/열 크기가 동일해야 한다 C= A- B #행렬의..

건국대학교 교양과목 생활경제증권투자 중간고사 시험범위를 정리한 텍스트입니다. 기업과 증권시장, 금융시장, 증권시장과 투자수단 내용이 포함되어 있습니다. 오개념, 오타에 대해선 책임지지 않으니 알아서 잘 걸러 보십시오... 글자는 서식이 깨져 이미지로 대체합니다. (글자 원본은 맨 아래에 있습니다) 원본 텍스트 더보기 1장: 기업과 증권시장 기업의 발전요인 자유로운 기업활동을 보장하는 법체계 자본시장의 발달로 대규모 자금 조달 가능 (자기자본+ 타인자본) 주식,채권 발행이 가능해지면서 대중으로부터 대규모의 자금 조달 가능 소유와 경영의 분리로 전문경영인의 능력 적극 활용 소유주보다 전문 경영인이 전문성과 시장 이해도가 더 높기 때문에 기업 성공 가능성이 높아진다 그러나 소유주와 경영인의 정보의 비대칭성 문..
https://smallpdf.com/kr/merge-pdf PDF 합치기 - 무료로 인터넷에서 PDF 파일 병합하기 파일 제한, 광고 워터마크 없음 - 사용자가 원하는 대로 완벽하게 PDF를 합쳐주는 무료 온라인 툴입니다. smallpdf.com 별도 프로그램 설치 없이 웹에서 바로 해볼 수 있다. 오픈북 시험의 경우 해당 사이트를 이용해 하나로 합친 후 ctrl+F 로 키워드를 검색하면서 찾으면 빠르게 검색할 수 있다.

Cucoo's Egg 뻐꾸기는 직접 새끼를 기르지 않고 다른 새의 둥지에 알을 옮겨 그 새가 키우게 한다. 그것처럼 다른 시스템에 프로그램(뻐꾸기 알)을 옮겨두고 추후 실행되었을 때 공격자가 원하는 동작을 하게 하는 공격 방법이다. 공격자는 대상 시스템의 Shell 권한 취득을 목적으로 한다. 공격자는 Shell 권한을 취득하기 위해, Shell을 실행시키는 코드를 작성하고 대상 시스템의 취약점이 있는 프로그램을 찾아낸 후, 그 프로그램에 강제로 오류를 일으켜 시스템이 공격자의 프로그램을 실행시키게 만든다. 어떻게 이것이 가능한가? 하나씩 알아보자. 리눅스/유닉스의 계정 먼저 리눅스/유닉스 시스템에서 사용하는 주요 보안 개념에 대해 알아보자. 리눅스에서는 사용자 타입이 "일반 사용자/루트 사용자" 두 가..

HTTP Protocol 웹 상에서 정보를 주고받기 위한 프로토콜이다. 클라이언트가 요청(request)을 보내고, 서버가 응답(response)을 보낸 후 종료되는 프로토콜로 무상태성(Stateless)의 특성을 갖으며, 평문으로 통신한다. 통신 보안을 위해 현재는 Secure layer(SSL/TLS)가 추가된 HTTPS도 많이 사용된다. HTTP: Request GET, POST, PUT, PATCH, DELETE 등 HTTP Method를 가지며, 각 메서드 별 역할이 정의되어 있다. https://developer.mozilla.org/ko/docs/Web/HTTP/Methods HTTP 요청 메서드 - HTTP | MDN HTTP는 요청 메서드를 정의하여, 주어진 리소스에 수행하길 원하는 행동..

방화벽 내/외부를 지나는 패킷들에 일정한 규칙을 기준으로 차단하거나 허용하는 시스템을 말한다. 방화벽은 접근 제어, 로깅과 감시추적, 인증, 데이터의 암호화 등의 역할을 한다. 방화벽: 패킷 필터 룰셋을 정의하여 해당 규칙에 맞는 패킷만 통과시키는 방법이다. 외부IP 외부PORT 내부IP 내부PORT 동작 External Any 192.168.0.2 80 Allow Any Any Any Any Deny 이 경우 외부에서 192.168.0.2:80으로 들어오는 패킷만 허용하고 나머지는 전부 허용하지 않는다. 패킷 필터는 패킷 상태에 대한 정보가 없으며, TCP 연결을 볼 수 없으므로 Boink, Teardrop 공격을 방어할 수 없다. 상태성 패킷 필터는 패킷에 상태를 추가하여, 연결 상태를 저장하고 연결..

SSID 브로드캐스팅 우리가 스마트폰으로 사용할 때 손쉽게 주변의 와이파이 리스트를 확인할 수 있다. 이 때 표시되는 와이파이의 이름이 SSID인데, 이는 AP가 주기적으로 자신의 SSID를 브로드캐스트하기 때문이다. 보안이 중요하다면 브로드캐스팅하지 않고, 사용자가 직접 입력해 들어올 수 있도록 한다. WEP(Wired Equivalent Privacy) AP 접속 시 WEP Key를 요구하는 방법. 웹키는 40~128비트 키를 사용하며, 만약 64비트 이하의 웹키라면 무선 랜 스니핑을 통해 30분 정도에 웹키 복호화가 가능하다. WPA(WiFi Protected Access) 와 WPA-PSK(Pre-Shared Key) 처음 연결 시 WEP Key를 이용해 통신하고, 이후 주기적으로 공유키를 재설정..

Sniffing 주로 유선 연결된 네트워크 상에서 다른 시스템이 보내는 내용을 엿보는 방법. 만약 허브 환경이라면 모든 패킷이 모든 네트워크 구성원에게 전달되므로, 이 때 랜카드의 promisicuos 모드를 활성화하면 패킷 필터링 기능이 해제되어 모든 정보를 들여다볼 수 있게 된다. 시스템에 꽂힌 랜카드들은 IP주소와 MAC주소를 통해 전송받은 패킷을 필터링해, 자신을 대상으로 하는 패킷만 받아들인다. 그러나 스위치 환경에서는 이런 필터링 방식이 스위치에서 이루어지기 때문에 스니핑을 위해 다른 방법을 사용한다. Sniffing: with Switch 스위치에는 MAC 테이블이 존재하므로, 들어온 패킷에 대해 목적지 MAC이 몇번 포트에 해당하는 네트워크인지를 알 수 있다. 이 때, ARP 프로토콜을 악..

DoS (Denial of Service) 서비스 거부 공격, 즉 서버가 정상적인 서비스를 하지 못하도록 하는 공격을 말한다. DoS: Ping of Death ICMP 프로토콜(패킷을 보낸 후 수신자가 다시 송신자에게 특정 메시지를 보낼 수 있다)을 활용해 네트워크가 정상적으로 작동하는지 확인하는 ping 유틸리티가 있다. Ping of Death 공격은 ICMP 프로토콜을 악용하여 수신자에게 최대 크기의 데이터를 전송하면 수신자의 네트워크에서는 해당 데이터를 모두 적절한 크기의 패킷으로 나누어 처리해야 하므로 부하가 커진다. 따라서 수신자는 정상적인 네트워크 서비스를 사용할 수 없게 된다. 현재 대부분의 대형 IT회사들은 아예 ICMP프로토콜을 막아버리거나, 일정 크기를 넘어설 경우 무시하고 있다. ..

프로토콜 서로 다른 시스템에 있는 개체가 통신하기 위해 필요한 동일한 통신 규약(약속) 프로토콜의 기능 주소지정 상대의 주소를 지정한다 순서지정 프토로콜 데이터 단위가 전송될 때 보내는 순서를 명시하는 기능으로, 연결 지향형(TCP/IP)에서만 사용 단편화 및 재조합 대용량 데이터 전송 시, 일정한 데이터 블록으로 나누어(단편화) 전송하고 수신자는 그 데이터를 재조합한다 데이터 흐름제어 수신자가 수신한 데이터의 양이나 속도 제어 연결제어 연결 지향형 데이터 전송에서는 연결 설정, 데이터 전송, 연결 해제의 3단계로 구성된다. 캡슐화 데이터에 제어 정보를 덧붙이는 것 오류제어 데이터 교환 시 오류를 발견하는 기법 동기화 송수신 개체가 먼저 정의된 인자를 공유하는 기법 멀티플렉싱 하나의 통신 선로에서 여러 ..

https://satisfactoryplace.tistory.com/131?category=829221 [React] 검색엔진 최적화(SEO):: Prerendering (react-snap) React는 대표적인 SPA제작 라이브러리이다. SPA가 사용감이나 개발적인 측면에서는 유리하지만, 빌드된 결과물을 보면 는 텅 비어있고 js가 body를 바꾸기 때문에 검색엔진은 이 사이트를 비어있는 satisfactoryplace.tistory.com 위 포스트에서 작성한 내용에서 최근 부족한 내용을 찾아 추가하려고 한다. 문제 react-snap은 지정된 url을 돌면서 html을 크롤링한다. 따라서 지정된 url로 접속했을 때는 그 페이지의 내용이 개략적으로 보이지만, 만약 동적인 url로 접속했을 때(/p..