ν…ŒμŠ€νŠΈλœ Python 리포지토리 쀑 3.6%μ—μ„œ μ‰Όν‘œ 였λ₯˜κ°€ λˆ„λ½λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

μ½”λ“œμ—μ„œ μ‰Όν‘œλ₯Ό 잘λͺ» μ‚¬μš©ν•˜λŠ” 것과 κ΄€λ ¨λœ 였λ₯˜μ— λŒ€ν•œ Python μ½”λ“œμ˜ 취약성에 λŒ€ν•œ 연ꡬ κ²°κ³Όκ°€ κ²Œμ‹œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ¬Έμ œλŠ” μ—΄κ±°ν•  λ•Œ Python이 λͺ©λ‘μ˜ λ¬Έμžμ—΄μ„ μ‰Όν‘œλ‘œ κ΅¬λΆ„ν•˜μ§€ μ•Šμ€ 경우 μžλ™μœΌλ‘œ μ—°κ²°ν•˜κ³ , κ°’ 뒀에 μ‰Όν‘œκ°€ 였면 ν•΄λ‹Ή 값을 νŠœν”Œλ‘œ μ²˜λ¦¬ν•œλ‹€λŠ” μ‚¬μ‹€λ‘œ 인해 λ°œμƒν•©λ‹ˆλ‹€. 연ꡬ원듀은 Python μ½”λ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ 666개의 GitHub 리포지토리에 λŒ€ν•œ μžλ™ 뢄석을 μˆ˜ν–‰ν•œ ν›„ μ—°κ΅¬λœ ν”„λ‘œμ νŠΈμ˜ 5%μ—μ„œ κ°€λŠ₯ν•œ μ‰Όν‘œ 문제λ₯Ό μ‹λ³„ν–ˆμŠ΅λ‹ˆλ‹€.

μΆ”κ°€ μˆ˜λ™ 쑰사에 λ”°λ₯΄λ©΄ μ‹€μ œ 였λ₯˜λŠ” 24개 μ €μž₯μ†Œ(3.6%)μ—λ§Œ μ‘΄μž¬ν•˜κ³  λ‚˜λ¨Έμ§€ 1.4%λŠ” κ±°μ§“ κΈμ •μ΄μ—ˆμŠ΅λ‹ˆλ‹€(예λ₯Ό λ“€μ–΄ μ—¬λŸ¬ μ€„μ˜ 파일 경둜, κΈ΄ ν•΄μ‹œ, HTML을 μ—°κ²°ν•˜κΈ° μœ„ν•΄ 쀄 사이에 μ‰Όν‘œλ₯Ό μ˜λ„μ μœΌλ‘œ μƒλž΅ν•  수 있음). 블둝 λ˜λŠ” SQL ν‘œν˜„μ‹). μ‹€μ œ 였λ₯˜κ°€ λ°œμƒν•œ 24개 μ €μž₯μ†Œ μ€‘μ—λŠ” Tensorflow, Google V8, Sentry, Pydata xarray, rapidpro, django-colorfield 및 django-helpdesk와 같은 λŒ€κ·œλͺ¨ ν”„λ‘œμ νŠΈκ°€ μžˆλ‹€λŠ” 점은 μ£Όλͺ©ν•  λ§Œν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μ‰Όν‘œ κ΄€λ ¨ λ¬Έμ œλŠ” Pythonμ—λ§Œ κ΅­ν•œλœ 것이 μ•„λ‹ˆλ©° C/C++ ν”„λ‘œμ νŠΈμ—μ„œ μ’…μ’… λ°œμƒν•©λ‹ˆλ‹€(졜근 μˆ˜μ • μ‚¬ν•­μ˜ μ˜ˆλŠ” LLVM, Mono, Tensorflowμž…λ‹ˆλ‹€).

μ—°κ΅¬λœ μ£Όμš” 였λ₯˜ μœ ν˜•μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  • λͺ©λ‘, νŠœν”Œ, μ§‘ν•©μ—μ„œ μ‹€μˆ˜λ‘œ μ‰Όν‘œκ°€ λˆ„λ½λ˜μ–΄ λ¬Έμžμ—΄μ΄ λ³„λ„μ˜ κ°’μœΌλ‘œ ν•΄μ„λ˜μ§€ μ•Šκ³  μ—°κ²°λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ Sentry의 ν…ŒμŠ€νŠΈ 쀑 ν•˜λ‚˜μ—μ„œ λͺ©λ‘μ˜ "releases"와 "discover" λ¬Έμžμ—΄ 사이에 μ‰Όν‘œκ°€ λˆ„λ½λ˜μ–΄ "/releases" 및 "discover"λ₯Ό ν™•μΈν•˜λŠ” λŒ€μ‹  μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” "/releasesdiscover" ν•Έλ“€λŸ¬λ₯Ό ν…ŒμŠ€νŠΈν•˜κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. /발견"을 λ³„λ„λ‘œ μ‹€ν–‰ν•˜μ„Έμš”.
    ν…ŒμŠ€νŠΈλœ Python 리포지토리 쀑 3.6%μ—μ„œ μ‰Όν‘œ 였λ₯˜κ°€ λˆ„λ½λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

    또 λ‹€λ₯Έ μ˜ˆλŠ” rapidproμ—μ„œ μ‰Όν‘œκ°€ λˆ„λ½λ˜μ–΄ 두 κ°€μ§€ λ‹€λ₯Έ κ·œμΉ™μ΄ 572ν–‰μ—μ„œ λ³‘ν•©λ˜λŠ” κ²½μš°μž…λ‹ˆλ‹€.

    ν…ŒμŠ€νŠΈλœ Python 리포지토리 쀑 3.6%μ—μ„œ μ‰Όν‘œ 였λ₯˜κ°€ λˆ„λ½λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • 단일 μš”μ†Œ νŠœν”Œ μ •μ˜ 끝에 μ‰Όν‘œκ°€ μ—†μ–΄ ν• λ‹Ή μ‹œ νŠœν”Œμ΄ μ•„λ‹Œ 일반 μœ ν˜•μ΄ ν• λ‹Ήλ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, "values ​​​​= (1,)" ν‘œν˜„μ‹μ€ ν•œ μš”μ†Œμ˜ νŠœν”Œ λ³€μˆ˜μ— ν• λ‹Ήλ˜μ§€λ§Œ "values ​​​​= (1)"은 μ •μˆ˜ μœ ν˜•μ˜ ν• λ‹ΉμœΌλ‘œ μ΄μ–΄μ§‘λ‹ˆλ‹€. μ΄λŸ¬ν•œ ν• λ‹Ήμ˜ κ΄„ν˜ΈλŠ” μœ ν˜• μ •μ˜μ— 영ν–₯을 μ£Όμ§€ μ•ŠμœΌλ©° 선택 사항이며, νŠœν”Œμ˜ 쑴재 μ—¬λΆ€λŠ” μ‰Όν‘œμ˜ 쑴재 여뢀에 따라 νŒŒμ„œμ— μ˜ν•΄ κ²°μ •λ©λ‹ˆλ‹€. REST_FRAMEWORK = { 'DEFAULT_PERMISSION_CLASSES': ( 'rest_framework.permissions.IsAuthenticated' # νŠœν”Œ λŒ€μ‹  λ¬Έμžμ—΄μ΄ ν• λ‹Ήλ©λ‹ˆλ‹€. ) }
  • λ°˜λŒ€ 상황은 ν• λ‹Ή 쀑에 μΆ”κ°€ μ‰Όν‘œμž…λ‹ˆλ‹€. ν• λ‹Ή 끝에 μ‹€μˆ˜λ‘œ μ‰Όν‘œκ°€ 남겨진 경우 일반 μœ ν˜• λŒ€μ‹  κ°’μœΌλ‘œ νŠœν”Œμ΄ ν• λ‹Ήλ©λ‹ˆλ‹€(예: "value = 1" λŒ€μ‹  "value = 1"이 μ§€μ •λœ 경우).

좜처 : opennet.ru

DDoS 보호, VPS VDS μ„œλ²„κ°€ μžˆλŠ” μ‚¬μ΄νŠΈλ₯Ό μœ„ν•œ μ•ˆμ •μ μΈ ν˜ΈμŠ€νŒ… κ΅¬μž… πŸ”₯ DDoS 곡격 λ°©μ§€ κΈ°λŠ₯이 νƒ‘μž¬λœ μ•ˆμ •μ μΈ μ›Ήμ‚¬μ΄νŠΈ ν˜ΈμŠ€νŒ…, VPS 및 VDS μ„œλ²„λ₯Ό κ΅¬λ§€ν•˜μ„Έμš” | ProHoster