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

declspec의 이미지

리눅스에서 읽기 권한이 없는 바이너리 분석

a 라는 사용자의 파일에 대한 접근권한이 아래와같습니다

file -r-s--x---

이때 b 라는 일반 사용자가 a 와 같은 그룹에 속할때(결국 실행(x) 만 가능)
이 바이너리파일을 분석할 방법이 있을까요?(소스코드는 당연히없음)
gdb 를 사용해도 어셈블리 코드를 볼수는 없을테고
break point 도 못거나요?

strace 등의 프로그램으로도 분석 안될까요?

declspec의 이미지

리눅스 bash 쉘에서 argv 로 널문자 입력이 가능한가요?

리눅스에서 C 로짠 프로그램 a 가 아래와 같을때

#include
int main(int argc, char* argv[]){
int i;
for(i=0; i<10; i++) printf("%02x\n", argv[1][i]);
return 0;
}

아래와 같이 쉘에서 명령을 수행하면 그 결과가 어떻게 나올까요?

shell$./a `perl -e 'print"abcd\x00efgh"'`

a
b
c
d

e
f
g
h

이렇게 나올거로 예상되지만 실제로는

a
b
c
d
e
f
g
h

이렇게 나옵니다

즉 널문자를 입력하려했던게 무시됩니다.
어떻게하면 argv 에 널문자(아스키코드 0) 를 전달할 수 있을까요??

declspec의 이미지

strlen 어셈블리 설명좀 부탁해요

아래와는 strlen 함수가 호출되는부분이 inline 으로 치환된것으로 예상되는 부분인데요
아래에서 cld 과 repnz scas 부분을 잘 모르겠습니다
구글링해보니 cld 를 하면 string 을 쓰는 주소증감방향이 바뀌는것이고
repnz 이건 scas 명령에 대해서 ecx 와 관련해서 반복을 하기위한것이고
scas 는 문자열을 스캔하는것이라는거까지 아는데
%es: 이게 왜 들어가야하는것이며
아래의 코드에 의해 어떻게 strlen 결과가 나오는것이고
cld 가 왜있어야하는지(주소 증감방향 지정이 왜필요한건지??)
모르겠네요

hardboiled65의 이미지

특정 ip에서 제 리눅스 서버에 접속이 안됐었습니다.

방금 겪은 이상한 일이었는데, 우분투로 집에서 개인 서버를 돌리고 있습니다.

대표적으로 ssh, apache, ftp 를 사용합니다.

방금전에 기숙사에서 ssh를 이용한 접속이 갑자기 안되었습니다. 맥을 사용하는데

이게 가끔 X11이 말썽을 일으켜서 안되는 경우가 있습니다.

그래서 X를 재시작 해보고 안돼서 X포워딩을 끄고 접속해봐도 안되는 것이었습니다.

홈페이지에 접속해봐도 안되고, ftp도 연결이 안되네요. 혹시나 서버가 다운되었나 싶어

스마트폰의 putty로 접속해보니 잘만 됩니다. 그다음엔 버추얼박스로 설치한 게스트

윈도우에서 해봤는데 여기서는 홈페이지는 들어가지는데 putty로는 접속이 안됩니다.

윈도우에서는 기숙사에서 인터넷을 쓰기 위해서는 보안 프로그램을 설치해야 하는데

가상머신이라 그런진 몰라도 설치가 안돼서 프록시를 우회하는 방법을 사용중인데

그때문에 홈페이지는 접속이 되었나봅니다.

lmk378의 이미지

임베디드 시스템에서의 키패드 설계도관련 질문입니다.

요즘 스케멘틱을 계속 봐야할 일이 생겨 궁금한게 너무 많습니다^^;;
키패드 설계도입니다.

gpio1 ------스위치------ gpio0
gpio2 ------스위치------ gpio0
gpio3 ------스위치------ gpio0
gpio4 ------스위치------ gpio0

이렇게된 구조인데 gpio0은 KP_ROW라는 alternate func 동작하고
gpio1/2는 input
gpio3/4는 output으로 설정되어있습니다.
제 생각엔 gpio1~4까지 input으로 설정된다면 동작원리가 이해가 가는데
output으로 된것도 있어서 어떤메커니즘으로 동작하는지 잘 이해가 되지 않습니다.

thslrtoo의 이미지

파일이 있는데도 자꾸 없다고 뜨네요.

리눅스에서 크로스 컴파일을 하려고 arm 용 gcc를 복사하고
path 설정까지 다 했는데도 파일이 없다고 뜨네요.
파일이 있는 위치에서 파일을 실행해도 없다고 뜨는데 왜 이런가요??
이런경우는 처음봐서 황당하네요.
(첨부파일에 캡쳐해놨습니다.)

wk2006의 이미지

[완료] 윈도우에서 환경 변수와 리눅스에서 환경 변수

안녕하세요

윈도우에서는 C언어로 프로그램을 작성한 후 컴파일 링크 하면 실행파일이 생깁니다.
그리고 환경 변수에 이 실행 파일의 위치를 설정해주면 커맨드상에서 사용자의 위치에 상관없이 해당 프로그램을 이용할 수 있습니다.

질문 :
위의 윈도우에서의 작업을 리눅스에서는 어떻게 해야하는 지 아는분 계신가요??

prankenmk2의 이미지

통계를 내는 스크립트를 만들려고 합니다. 조언 부탁드려요!

안녕하세요.

DB Slow 로그 내용을 가지고 통계를 내는 스크립트를 작성해야 합니다.

그런데 스크립트 작성에 애를 먹고 있네요. 어떻게 하면 좋을지 조언 부탁드립니다.

로그파일의 내용은 간단히 예를 들면

#10.10.10.10
aaaaaaaaaaaaaa
use mysql
select aaa from db;

이런 로그가 있으면

IP(10.10.10.10)로 조회해서 이 IP가 어떤 DB에 접속했는지를 찾아내는 스크립트 입니다.

생각하는건 ip를 인자로 주고 해당 IP가 걸리면(grep등등) 바로 다음에 나오는 use로 시작하는 부분을 찾으면 될거 같은데요...

어떻게 도저히 감이 잡히질 않네요.

이 부분에 대해 조언 부탁드립니다 ㅠ

감사합니다!

bloody의 이미지

자바로 구현된 디자인 패턴 라이브러리

자바 디자인 패턴을 책으로 공부하고 있는데요. 유끼 히로시라는 사람이 쓴 책입니다.
책은 다봤는데...실제적으로 java로 만들어진 디자인 패턴 라이브러리나 사용한 소스(오픈소스)를 보고 싶은데요.

물론 잘 구현되어 있어야 하구요.

그런 라이브러리나 소스가 있나 질문드립니다.

수고하세요

kws4679의 이미지

오버로드된 메소드 오버라이딩...

뭔가 희한한 상황이어서 질문드립니다!!

문자는 오버로드된 init 메소드를 오버라이딩하는건데요

폰갭 안드로이드 소스내에 init 메소드를 오버라이딩하려고 합니다

페이지

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