[JAVA] JNI Invoke Interface
·
분석
typedef const struct JNIInvokeInterface *JavaVM;const struct JNIInvokeInterface ... = { NULL, // 0 NULL, // 1 NULL, // 2 DestroyJavaVM, // 3 AttachCurrentThread, // 4 DetachCurrentThread, // 5 GetEnv, // 6 AttachCurrentThreadAsDaemon // 7};Reference: https://docs.oracle.com/javase/8/docs/technotes/guides/jni/spec/invocation.html
[JAVA] JNI Native Interface
·
분석
const struct JNINativeInterface ... = { NULL, // 0 NULL, // 1 NULL, // 2 NULL, // 3 GetVersion, // 4 DefineClass, // 5 FindClass, // 6 FromReflectedMethod, // 7 FromReflectedField, // 8 ToReflectedMethod, // 9 GetSuperclass, // 10 IsAssignableFrom, // 11 ToReflectedField, // 12 Throw, // 13 ThrowNew, // 14 ExceptionOccurred, // 15 ExceptionDescr..
[BOJ] 1759번 암호 만들기
·
알고리즘/PS
링크: https://www.acmicpc.net/problem/1759문제 이해이 문제를 처음 보았을 때, 백트래킹을 이용한 조합이라고 생각했다. 기본적으로 암호로 만들 수 있는 경우를 다 출력하는 문제인데 조건은 다음과 같다.암호는 최소 한 개의 모음과 최소 두 개의 자음의 조합이다.그리고 각 암호는 증가하는 순서로 배열되어있다. 백트래킹에 가지치기 잘 치면 될 것 같다 생각해서 코드를 작성했다.설명바로 문제 양식대로 백트래킹을 구현해 줬다.여기서 고민했던 부분은 최소 한 개의 모음과 최소 두 개의 자음이었다.생각을 해보니 모음을 선택 안 하는 기준은 전체 길이에서 현재 문자열의 모음 개수를 뺀 게 2보다 작거나 같다면즉, 자음 개수가 2보다 작으면 선택을 안 하면 되는 거였다.그리고 자음을 선택 안..
티스토리 블로그에 커스텀 이모지(이모티콘) 적용하는 방법
·
개발
개요solved.ac 디스코드에는 블롭 이모지가 존재한다.나는 이 이모지가 너무 귀여워 블로그에도 사용할 수 있나 여기저길 뒤져보았지만, 관련 글은 안 나오고 슬랙이나 디스코드 서버만 나왔다...그래서 직접 만들었다. :blobthumbsup: :blobthumbsup: :blobthumbsup:적용법티스토리 스킨 편집 사이트로 접속하자.html 편집을 누른다. 태그 아래에 위 사진과 같이 코드를 추가한다.적용하면 바로 블롭 이모지를 사용할 수 있다. :blobaww:사용법글을 작성할때 이모지를 표현하고 싶으면 :커스텀_이모지: 를 글자로 입력하면 된다. :blobyum: 만약 hELLO 테마를 사용하고 있다면, 이모지 예시 글이 있으니 참고하길 바란다.그리고 사용자가 원하는 이모지를 직접 추가할 수 있..
Blob 이모지 테스트 :blobaww:
·
개발
blobangery :blobangery:blobangry :blobangry:blobcry :blobcry:blobfearful :blobfearful:blobimfine :blobimfine:blobaww :blobaww:blobrofl :blobrofl:blobsad :blobsad:blobsadrain :blobsadrain:blobdead :blobdead:blobpats :blobpats:blobsob :blobsob:blobthinking :blobthinking:blobyum :blobyum: blobimfine :blobimfine:blobpats :blobpats:blobangrey :blobangery:한 문장에 두 이모지blobfearful :blobfearful: blobaww :..
SMS stealer 악성코드 분석
·
분석/악성코드
배경오늘 휴대폰을 보니 이런 문자가 와있었다.평범한 스팸 문자지만 공격자가 사람들을 어떻게 공격하는지 궁금해서 분석하기로 하였다.악성코드 분석일단 문자 메시지를 잘 보면 맨 앞 00은 국제 발신이라는 의미이다. 이는 뉴스 기사에서 확인할 수 있다.앞 00 이후에 오는 7을 통해 발신인은 러시아 혹은 카자흐스탄에서 보낸 메시지인걸 확인할 수 있다. 그리고 본문엔 청소행정과를 사칭하는 내용과 nhde.hair 라는 도메인이 있다.사이트에 접속하면 이런 화면이 반겨준다.아주 친절하게 앱을 다운로드하라 안내하고 있고, 앱 다운로드가 차단되었을 때 대처법도 알려주고 있다.그럼 이 사이트를 좀 살펴보자.다운로드 버튼을 보니 down이라는 함수를 호출하고 있다.인구 10억명이 넘는 그 나라 언어가 주석으로 보인다.대..
[BOJ] 9019번 DSLR
·
알고리즘/PS
링크: https://www.acmicpc.net/problem/9019문제 이해이 문제를 처음 접했을 때, 내 머리는 이런 식으로 이해했다. 레지스터 \( n \) \( (0 \le n \le 10\,000) \) 이 있다. 그리고 명령어가 존재한다. 이는 D, S, L, R로 나뉜다.그리고 \( n \)의 네 자릿수를 \( d_1, d_2, d_3, d_4 \) 라고 한다.\( n = ((d_1 * 10 + d_2) * 10 + d_3) * 10 + d_4 \) 이다. 쉽게 이야기하면, \(d_i\)는 \(i\) 번째 수라 보면 된다. \( ( 1 \le i \le 4 ) \) 명령어 D, S, L, R은 다음과 같다.D: \( 2n \bmod 10\,000 \)S: \( n - 1 \) (만약 계산..
네이버 카페 멤버 아이디 알아내기
·
분석/네이버
이번 글에서는 네이버 카페의 멤버 아이디를 권한 없이 알아내는 방법을 소개해보고자 한다.예전에는 그냥 네이버 블로그나 프로필에서 바로 알아내면 되는 거였는데, 요즘은 그 위치가 살짝 바뀌었다.일단 네이버 쪽지 기능에 결함이 있는 걸 알아냈다.다른 부분에서는 maskedMemberId로 가려져있지만, 쪽지 기능에서는 보이기 때문이다.하지만 이 쪽지 기능도 PC 버전과 모바일 버전에서의 노출되는 정보가 각각 다르다.이제부터는 각 버전에서 어떤 정보가 노출되는지 알아보도록 하자.중고나라 카페로 예를 들도록 하겠다.PC 버전의 쪽지 기능여기서는 사용자가 설정한 네이버 별명이 노출되는 현상이 있다.위의 사진을 보았을 때, 네이버 별명은 필자의 경우 sim으로 되어있다.보통 사람들은 이 별명에 자기의 실명을 넣는 ..