<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>stone_security.log</title>
        <link>https://velog.io/</link>
        <description>보안을 하고 싶은 감자</description>
        <lastBuildDate>Sat, 18 May 2024 15:42:58 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>stone_security.log</title>
            <url>https://velog.velcdn.com/images/stone_security/profile/bd409405-6073-40b2-bd7e-17d5fb899c38/image.jpg</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. stone_security.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/stone_security" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[Batch script 기본문법 정리]]></title>
            <link>https://velog.io/@stone_security/Batch-script-%EA%B8%B0%EB%B3%B8%EB%AC%B8%EB%B2%95-%EC%A0%95%EB%A6%AC</link>
            <guid>https://velog.io/@stone_security/Batch-script-%EA%B8%B0%EB%B3%B8%EB%AC%B8%EB%B2%95-%EC%A0%95%EB%A6%AC</guid>
            <pubDate>Sat, 18 May 2024 15:42:58 GMT</pubDate>
            <description><![CDATA[<h1 id="echo">ECHO</h1>
<blockquote>
<h2 id="echo-1">echo</h2>
<p>화면에 메세지 출력</p>
</blockquote>
<h2 id="echo-on">echo on</h2>
<p>출력되는 텍스트 보이기</p>
<h2 id="echo-off">echo off</h2>
<p>출력되는 텍스트 감추기</p>
<h2 id="echo-2">echo.</h2>
<p>문자열 줄바꿈</p>
<h2 id="echo-변수">echo %변수%</h2>
<p>SET으로 선언된 변수를 호출
만일 변수가 정의되어 있지 않은 상태라면, 화면에 &quot;echo가 정의되어 있지 않습니다.&quot;라는 메시지 출력</p>
<h2 id="goto">goto</h2>
<p>원하는 곳으로 이동 시 사용</p>
<h2 id="label">:LABEL</h2>
<p>라벨을 표시, 특정 레이블로 제어를 점프하기 위해 </p>
<h1 id="file">FILE</h1>
<blockquote>
<h2 id="start">START</h2>
<p>기본 프로그램으로 파일 실행</p>
</blockquote>
<h2 id="rem">REM</h2>
<p>프로그램 내 글자 입력 -&gt; 주석</p>
<h2 id="mkdirrmidir">MKDIR/RMIDIR</h2>
<p>디렉토리 생성/삭제</p>
<h2 id="del">DEL</h2>
<p>파일 삭제</p>
<h2 id="copy">COPY</h2>
<p>파일 복사</p>
<h2 id="xcopy">XCOPY</h2>
<p>추가 기능에 따라 파일 복사</p>
<h2 id="forindo">FOR/IN/DO</h2>
<p>파일 지정</p>
<h2 id="mode">MODE</h2>
<p>배치파일 실행시 콘솔 창 크기 지정</p>
<h2 id="pause">PAUSE</h2>
<p>배치파일 일시정지</p>
<h2 id="set">SET</h2>
<p>변수 지정 (변수에는 숫자, 문자 상관없이 넣을 수 있음)</p>
<h1 id="기호">기호</h1>
<blockquote>
<h2 id="">%</h2>
<p>명령어줄 매개변수 접두사</p>
</blockquote>
<h2 id="-1">/</h2>
<p>명령어 옵션 플래그</p>
<h2 id="-2">==</h2>
<p>(같음) 문자열 비교 테스트</p>
<h2 id="-3">!==!</h2>
<p>(다름) 문자열 비교 테스트</p>
<h2 id="-4">|</h2>
<p>파이프</p>
<h2 id="-5">*</h2>
<p>파일명 &quot;와이드 카드&quot;</p>
<h2 id="-6">&gt;</h2>
<p>파일 재지향 (덮어 쓰기)</p>
<h2 id="-7">&gt;&gt;</h2>
<p>저장될 내용 (덧붙여 쓰기</p>
<h2 id="-8">&lt;</h2>
<p>표준입력 재지향</p>
<h2 id="color">COLOR</h2>
<p>콘솔 창의 폰트, 배경색 지정
0 : 검은색, 1 : 파란색, 2 : 녹색, 3 : 청록색, 4 : 빨간색 5 : 자주색
6 :  노란색, 7 : 흰색, 8 : 회색, 9 : 연한 파란색
A : 연한 녹색, B : 연한 청록색, C : 연한 빨간색
D : 연한 자주색, E : 연한 노란색, F :  밝은 흰색</p>
<h2 id="var">%VAR%</h2>
<p>환경 변수</p>
<h2 id="not">NOT</h2>
<p>뒤에 나오는 테스트 부정</p>
<h2 id="nul">NUL</h2>
<p>명령어 출력을 없애기 위한 &quot;블랙홀&quot;</p>
<h2 id="for-var-in-do">FOR %%VAR IN DO</h2>
<p>for 루프</p>
<h2 id="choice">CHOICE</h2>
<p>메뉴 선택</p>
<h1 id="if">IF</h1>
<blockquote>
<h2 id="if-1">IF</h2>
<p>조건문</p>
</blockquote>
<h2 id="if-nor">IF NOR</h2>
<p>조건문</p>
<h2 id="else">ELSE</h2>
<p>조건문</p>
<pre><code>@ECHO OFF
IF%num%==1
(ECHO num은 1입니다.
)else(
echo num은 1이 아닙니다.
)</code></pre><h2 id="if-errorlevel-1">IF ERRORLEVEL 1</h2>
<p>배치파일 실행 도중 에러 발생시 0이외의 값(1,2,3..)을 반환하고 에러가 발생하지 않으면 0을 반환</p>
<pre><code>@ECHO OFF
SET blin = 문구
ECHO %a% | FIND &quot;문구&quot; &gt; NUL
IF ERRORLEVEL 1 
ECHO 문구가 포함되어 있지 않음
IF ERRORLEVEL 0 
ECHO 문구가 포함되어 있음</code></pre><h2 id="if-exist-filename">IF EXIST FILENAME</h2>
<p>파일 존재 여부 확인</p>
<pre><code>@ECHO OFF
IF EXIST c\window.bat 
ECHO 파일이 존재함
IF NOT EXIST c\window.bat
ECHO 파일이 존재하지 않음</code></pre><h2 id="if-n1">IF !%N==1</h2>
<p>변경가능한 매개변수 &quot;N&quot;이 없다면</p>
<h2 id="call">CALL</h2>
<p>다른 스크립트 &quot;포함&quot;</p>
<h2 id="command-c">COMMAND \C</h2>
<p>CALL과 동일</p>
<h2 id="set-1">SET</h2>
<p>환경 변수 세트</p>
<h2 id="setx">SETX</h2>
<p>윈도우 환경변수 등록
사용자 또는 시스템 환경에 환경변수를 만들거나 수정</p>
<h2 id="seift">SEIFT</h2>
<p>명령어줄 변수 목록을 왼쪽으로 이동</p>
<h2 id="errorlevel">ERRORLEVEL</h2>
<p>종료 상태</p>
<h2 id="con">CON</h2>
<p>&quot;콘솔&quot;</p>
<h2 id="prn">PRN</h2>
<p>프린터 디바이스</p>
<h1 id="관계형-연산자">관계형 연산자</h1>
<blockquote>
<h2 id="equ">EQU</h2>
<p>같은 ==</p>
</blockquote>
<h2 id="neq">NEQ</h2>
<p>같지 않다 !=</p>
<h2 id="lss">LSS</h2>
<p>이하 &lt;</p>
<h2 id="leq">LEQ</h2>
<p>작거나 같음 &lt;=</p>
<h2 id="gtr">GTR</h2>
<p>~ 보다 큰 &gt;</p>
<h2 id="geq">GEQ</h2>
<p>크거나 같음 &gt;=</p>
<h2 id="type">TYPE</h2>
<p>텍스트 파일 불러오기</p>
<h2 id="find">FIND</h2>
<p>문자 찾기(찾고 싶은 문자가 포함된 줄을 출력)</p>
<h2 id="findstr">FINDSTR</h2>
<p>문자 찾기(여러개의 문자를 찾기)</p>
<h2 id="gpedit">gpedit</h2>
<p>로컬 컴퓨터 정책을 확인할 수 있는 명령어
해당 명령으로 로컬 보안
정책도 확인 가능</p>
<h2 id="secedit">secedit</h2>
<p>&#39;로컬 보안 정책&#39;을 설정, 조회할 수 있는 명령어
시스템 보안 구성을 관리하는 도구</p>
<h2 id="secedit-명령어">secedit 명령어</h2>
<p><code>secedit /EXPORT /CFG Security_Policy.txt</code>
/EXPORT: 시스템 보안 구성을 내보내는 옵션
/CRG: 구성 파일의 경로를 지정하는 옵션
위 코드를 실행하면 시스템의 현재 보안 정책이 &quot;Security_Policy.txt&quot; 파일에 내보내지게 된다</p>
<p>윈도우 명령어 참고
<a href="https://learn.microsoft.com/ko-kr/windows-server/administration/windows-commands/windows-commands">https://learn.microsoft.com/ko-kr/windows-server/administration/windows-commands/windows-commands</a></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[Batch script - 주석, echo]]></title>
            <link>https://velog.io/@stone_security/batch-script-%EC%A3%BC%EC%84%9D-echo</link>
            <guid>https://velog.io/@stone_security/batch-script-%EC%A3%BC%EC%84%9D-echo</guid>
            <pubDate>Thu, 16 May 2024 12:49:09 GMT</pubDate>
            <description><![CDATA[<p>윈도우 배치 스크립트 주석방법
<code>rem</code> : remark 주석 !!권장!!
<code>::</code> : double colon - 일부 오류가 존재할 수 있음 (if/for문 내)</p>
<blockquote>
<pre><code>REM 한글 출력을 위해 문자 코드페이지를 437로 설정
chcp 437입력하세요</code></pre></blockquote>
<pre><code>
&gt; ```
:: 한글 출력을 위해 문자 코드페이지를 437로 설정
chcp 437</code></pre><h1 id="echo">echo</h1>
<p>텍스트를 출력하거나, 명령어 반향을 설정한다</p>
<blockquote>
<pre><code>echo 공유폴더 제거  </code></pre></blockquote>
<pre><code>
출력결과 
: 공유폴더 제거

# echo. 
공백으로 줄을 바꾸는 개행과 같다</code></pre>]]></description>
        </item>
        <item>
            <title><![CDATA[Token 토큰]]></title>
            <link>https://velog.io/@stone_security/Token-%ED%86%A0%ED%81%B0</link>
            <guid>https://velog.io/@stone_security/Token-%ED%86%A0%ED%81%B0</guid>
            <pubDate>Thu, 16 May 2024 11:00:17 GMT</pubDate>
            <description><![CDATA[<h1 id="token">Token</h1>
<p>클라이언트에서 인증 정보를 보관하는 방법
계정에 관련해서 서버를 프로그래밍할 때 권한을 주는 것
클라이언트가 서버에 접속하면 서버에서 해당 클라이언트에게 인증되었다는 의미로 토큰을 부여함</p>
<p>Token의 종류</p>
<h4 id="접근-토큰access-token">접근 토큰(access token)</h4>
<ul>
<li>가장 많이 이용되는 토큰 형식</li>
<li>시스템이나 소프트웨어에서 어떤 특정한 기능이나 데이터에 접근하는 대상에게 권한을 부여하는 데 사용</li>
<li>난수 형태의 문자열로 구성
ex) 웹 서비스 제공자는 사용자의 아이디, 패스워드, 신용카드 등의 정보를 사용해 만든 접근 허가 토큰을 사용자에게 발행하고 접속 시 사용하게 함<h4 id="보안-토큰security-token">보안 토큰(security token)</h4>
</li>
<li>하드웨어 저장 장치로 특정 전자기기의 제한된 자원(리소스)의 사용 권한 제어
ex) USB 보안 토큰<h4 id="세션-토큰session-token">세션 토큰(session token)</h4>
</li>
<li>통신망에서 서버와 클라이언트 간 세션 후 사용</li>
</ul>
<p>협력하여 일하는 행위자들 간에 공유자원 접근에 대한 동기화를 보장하기 위해 전달되는 추상적인 개념
토큰은 절대로 복사될 수도 손상될 수도 없으며, 토큰을 가진 사람이면 누구라도 특정 자원의 배타적 접근이 허용되며, 그것을 통제할 수 있는 권한을 가지게 된다.</p>
<h4 id="⭐토큰의-가장-큰-특징⭐">⭐토큰의 가장 큰 특징⭐</h4>
<ol>
<li>상태 유지를 하지 않는다</li>
<li>유저의 인증 정보를 서버나 세션에 담아두지 않음</li>
<li>세션이 존재하지 않으니, 유저들이 로그인되어있는지 안되어있는지 신경쓰지 않으면서 서버 손쉽게 확장 가능</li>
</ol>
<p>기존 세션 기반 인증은 서버가 파일이나 데이터베이스에 세션 정보를 가지고 있어야 하고 이를 조회하는 과정이 필요하기 때문에 많은 오버 헤드가 발생한다.
그러나, 토큰은 세션과 달리 클라이언트에 저장되기 때문에 서버의 부담을 덜 수 있다.</p>
<h4 id="단점">단점</h4>
<p>쿠키/세션과 달리 토큰 자체의 데이터가 길어 인증 요청이 많아질수록 네트워크 부하가 심해질 수 다</p>
]]></description>
        </item>
    </channel>
</rss>