본문 바로가기

[Study & Job]/[기타]

python 앞뒤 공백 제거 strip()함수는 문자열의 앞뒤 공백 뿐만 아니라 '\n'같은 줄바꿈 문자도 뗴어준다.
python에서 리스트내에 중복 값 제거 set_test = set()set_test.add(3)set_test.add(2)set_test.add(3)print(set_test) --> set([2,3]) set 형은 추가되는 요소들이 중복되지 않도록 자동으로 걸러준다. 자동으로 정렬까지 해주는 줄 알았는데 막상 결과를 보면 정렬이 안 되어 있는 경우가 종종 있으므로 정렬이 필요하면 안전하게 sorted를 쓸 것. 그외 다른 버전[code python]#!/usr/bin/env pythonlists=['Admin','Admin','DB','DB','a','b','c','d','Admin']aa=[] for elem in lists: if (elem in aa) == 0: aa.append(elem)print aa[/code]
OEP를 찾아내자 보통 OEP를 찾는 방법은 여러가지가 있습니다. 단순히 코드를 하나하나 분석해가며 진행하는 방법에서부터 Stack을 이용한 방법, VirtualAlloc()를 이용하는 방법, LoadLibrary()를 이용하는 방법, Exception Handler를 이용하는 방법 등 요령껏 Packer마다의 다양한 방법이 이용될 수 있습니다. 1. Stack Based보통 Anti-Reversing 기법이 없는 일반적인 Packer들은 언팩루틴이 끝나고 OEP로 진입하기 전에 반드시 어떠한 현태로든지 스택에 저장된 레지스터를 복구하게 됩니다. 즉, Unpacking이 끝나고 나면 스택에 저장되어 있던 레지스터들을 복구하여 본래 프로그램에 재사용한다는 것입니다. 그럼 스택에서 레지스터들이 POP되는 순간을 잡아내면, O..
패킹 여부 확인법 1. Section의 Naming을 확인하자!Section Table Viewer로 섹션 정보 확인해보면, Yoda Cryrtor는 yC로 UPX는 UPX0, UPX1로 특별한 섹션이 추가됨을 알수 있다. 2. Code Cave여부를 확인해 보장!!코드를 JMP와 NOP으로 조작해둠. 3. Import Table이 눈에 뛰게 작은 경우패킹 되기 전에 Imports를 띄워서 보게되면 로드된 함수들이 엄청 많은데 비해패킹이 되어있을 경우에는 LoadLibraryA()와 GetProcAddress()함수밖에 없다.즉, LoadLibraryA()함수로 DLL파일을 로드하고, GetProcAddress()로 DLL에서 익스포트 된 함수의 주소를 얻어오는 기본적인 작업만을 하게 된다. 4. String Table에..
변수명명법 * 출처 : 포씨소프트(http://www.4csoft.com)사내 게시판 개발자마다 전부 다른 스타일인 부분인데 정리가 되어 있는게 있어서 퍼옵니다. 뭐 소프트웨어공학 같은곳에서 나오는 이야기지만 참고하시면 도움이 될것 같습니다. ========================================================== naming rule 1. PascalCasing (파스칼 케이싱) ■ 클래스, 열거형, 이벤트, 메서드 등의 이름을 만들 때에는 대문자로 시작하는 변수명을 사용한다.■ 복합어일 경우 중간에 시작하는 새로운 단어는 대문자로 적는다.예) UtilityBox, MainFrame 2. CamelCasing (카멜 케이싱)■ 메서드의 매개변수의 이름에 적용되는데 첫번째 문자는 소..
지금 현재 쓰고 있는 비쥬얼 스튜디어 에딧 스타일이다.. http://studiostyl.es/schemes/son-of-obsidian-with-resharper 개인적으로 마음에 드는 스타일이다!
요즘 ironpython을 가지고 놀고 있다... 이리도 좋은 c#과 python의 만남이...요즘에 가지고 놀면서 너무 즐겁게 쓰고 있다..특히 나같은 빠른 실험결과가 필요할 때는 python이 효자노릇을 톡톡히 해주고 있다..게다가 남에게 보여줄때.. 특히 교수님께 보여드릴때는..GUI를 이쁘게 넣어서 보여드린다..내가 그렇게 C#을 좋아하지는 않지만... 요번에 ironpython을 접하고너무 좋아졌다...참고로 tool은 SharpDevelop을 쓰고...현재 좀 사소한 것에 부딪혀서 여기에 트러블 슈팅 가이드를 남긴다...여기에 적은 것들은 전부 http://ezgoing.tistory.com/ 이분의 블로그에서 퍼옴을 미리 알린다.- IronPython: CPython에 있는 모듈들 사용하기IronPython을 설치하면 CPython에 있는 ..
무엇을 하든! 일을 이루기 위해선 Secret이 필요하다!! 항상 침묵 유지!! 그리고 비밀 유지!!!