1. 개요파이썬을 데몬 개발을 하다 보면, 해당 데몬이 문제를 메모리를 많이 먹거나, 프로세스를 너무 많이 생성하거나, 파일을 너무 많이 오픈하여, 서버 전체에 문제를 일으키는 경우가 발생하는데, 이를 해결하기 위한 방법을 찾아보았다.2. Resource limitshttps://docs.python.org/2/library/resource.htmlhttp://pythonforbiologists.com/index.php/measuring-memory-usage-in-python/import resourceprint resource.getrlimit(resource.RLIMIT_AS)print resource.getrusage(resource.RUSAGE_SELF)resource.setrlimit(reso..
1. Command Injection1.1. subprocess.call() functionsubprocess.call(), shell=True 인 경우에 해당shell=False 처리하고, 커멘드 라인 shlex.split() 처리1.2. os.system() or os.popen*() functionos.system(), os.popen*() 경우에 해당pipes.quote()를 사용하여, 변수(명령어 아규먼트), quote 처리한다.2. Code Injection2.1. exec() or eval() function위험성이 많기 때문에 가능하면 사용하지 않는게 좋다.사용해야 한다면, 받드시 들어올 수 있는 변수값을 체크 해야한다.2.2. pickle or shelve moduleCelery, Dja..
- Total
- Today
- Yesterday
- Python
- httpd
- configuration
- Ansible
- 외부링크
- engineering
- code
- mysql
- example
- 번역
- limits
- apache
- Windows
- 명령어
- monitoring
- Module
- error
- RESTful
- 코드
- command
- check
- Web
- File
- MariaDB
- PowerShell
- client
- Linux
- 예제
- deview
- 이슈처리
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |