프로그래밍 QnA + 설치 및 활용 QnA + 질문

jongmiss의 이미지

SetWindowsHookEx 으로 dll injection 공격시 방어 방법에 대해 문의드립니다.

DLL Injection 공격시 방어하는 방법에 대해 궁금한데요.
여기저기 찾아보았더니, 아래와 같은 방법으로 방어할수 있다고 합니다.

1. SetWindowsHookEx 호출시 내부적으로 user32.dll의 ClientLoadLibrary 를 먼저 호출
2. ClientLoadLibrary 주소에 RET 어셈블리어 코드를 삽입
(출처: http://ryangs.egloos.com/v/758078)

심플한것 같아 시도해봤지만, 해당 함수는 존재하지 않아, 주소를 가져올 방법이 없었습니다. (dumpbin 으로 함수리스트 확인)
ex) FARPROC pAddress = (FARPROC)::GetProcAddress(::GetModuleHandleA("user32.dll"), "ClientLoadLibrary");

혹시, 다른방법이 있을까요? 도움부탁드립니다~

arsestar의 이미지

nfs 질문이있습니다

현재 파일서버 1대

웹서버 2대를 이용해 파일서버의 디렉토리를 웹서버에 마운트해서 사용하려고 합니다

idmapd.conf 를 이용해 기존 파일서버에 있는 파일들의 유저를 웹서버와 맞춰놨습니다

그런데 파일서버에 새로운 유저를 생성하고 웹서버에서 보면 nobody로 나옵니다..

어떻게 해결해야될까요?

BrownBear의 이미지

리스트에 대해서 질문합니다.

class ABCDE
{
private:
list ListStorage;

public:
ABCDE();
~ABCDE();
};

리스트를 private에서 변수로 선언했을 때 ~ABCDE에서 ListStorage.clear(); 즉 리스트를 굳이 클리어 해줄필요가 없나요?

두번째로 리스트에 대한 iterator의 유효성을 검사하려고합니다.

그런데 이게

list::iterator ListIterator;

if(ListIterator == NULL); //컴파일 오류

리스트 Iterator에 대한 NULL을 검사하는 방법이 없나요?

임시적으로 *(unsigned char*)(&Iterator) == NULL 이런식으로 하고 있기는 한데 이게 검증이 안된 방법이라 안전한지 모르겠네요.

anywhere의 이미지

montavista 란

안녕하세요 리눅스 입문자 입니다.

montavista , mips 이런 말들을 많이 본거 같은데

이게 뭔지 설명좀 부탁드려요 될까요^^

knowlight의 이미지

서비스엔지어라면 반드시 알아야할 명령어가 어떤게 있을까요?

SSO쪽 서비스 엔지니어를 지원하려고 하는데
준비하는 과정에서
서비스엔지니어 라면 반드시 알아야할 명령어가 뭐가있을까요?
리눅스 명령어든 뭐든 감이 잘 안잡히네요

예를 들면 top 이나 netstat이런것 일까요?

maxswjeon의 이미지

Apache mod_ssl 버전업그레이드 방법

아시는 분 있나요?
참고로 DSO방식이여서 mods-available있고, 리눅스 환경임니다
지금은 버전이 1.0.1f버전이더라고요

alkfjalfja의 이미지

C언어 코드 질문...

안녕하세요? C코드 분석 중 이해가 되지 않는 부분이 있어 질문 드립니다.

아래 코드에서 MAX_SIG_FNAME은 512로 define 되어 있습니다.

sprintf((char*)fmt, "%%%u[^\x01-\x1f]", MAX_SIG_FNAME);

그런데... "%%%u[^\x01-\x1f]" 이 이해가 되질 않는데, 설명 좀 부탁 드리겠습니다.

미리 감사합니다.

qkrwncks593의 이미지

node js 질문 콜백처리 순서

app.post('/getusername', function (req, res) {

result = {};
connection.query('SELECT username FROM USERS WHERE session=?', [req.body.session]. function(err, rows, fields) {
if(err) throw err;

result.username = rows[0].username;
res.send(result); // 첫번째 위치
}

res.send(result); // 두번째 위치

});

쿼리질의 결과를 전송해줄때 어디에 전송코드를 위치시켜놓는게 좋을까요?

everkth의 이미지

gcc를 삭제하고 다시 설치하려 합니다.

안녕하세요. 맥 유저인 학생입니다.

연구용으로 돌릴 프로그램을 설치하는데 컴파일 하는 도중에 gfortran의 버전이 5.2임에도 불구하고 4.8 이상이 되지 않으므로 실행 불가능 하다는 에러 메세지가 자꾸 뜹니다.

그래서 아예 gcc와 gfortran을 다시 설치하려고 하는데요. 지금 설치된 gcc는 xcode의 command line tools를 통해 설치된 것입니다. 시스템 폴더에 설치가 되어 있어서 함부로 건드렸다간 큰일 날것 같아서 방법을 찾고자 구글링을 해봤지만 하려는 작업보다 설명이 복잡해서 더 어려워졌습니다.

삭제 방법 내지는 또 다른 방안에 대해 이곳 고수분들 고견을 들을 수 없을까요?

페이지

프로그래밍 QnA + 설치 및 활용 QnA + 질문 구독하기