ΠΠΈΠ½Π°ΡΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠ°, 18 ΠΌΠ°Ρ, ΠΠ΅ΡΠΈ ΠΠ΅ΠΌΠ±Π»ΠΈΠ½ ΠΎΠ΄ Kenna Security
ΠΠΎΠ·Π°Π΄ΠΈΠ½Π° ΡΠΎ Π°Π»ΠΏΡΠΊΠΈ
ΠΡΠΈΡΠΈΠ½Π°ΡΠ° Π·Π° ΠΌΠΈΠ½ΠΈ-ΠΈΡΡΡΠ°ΠΆΡΠ²Π°ΡΠ΅ΡΠΎ Π±Π΅ΡΠ΅ ΠΠ·Π²Π΅ΡΡΠ°ΡΠΎΡ Π·Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡ Π½Π° Π’Π°Π»ΠΎΡ ΠΊΠΎΡ ΡΠ΅ ΠΏΠΎΡΠ°Π²ΠΈ ΠΏΡΠ΅ΡΡ
ΠΎΠ΄Π½ΠΎ ΠΎΠ²ΠΎΡ ΠΌΠ΅ΡΠ΅Ρ (
βΠΡΠΈΡΠΈΡΠ°Π»Π½ΠΈΡΠ΅ Π²Π΅ΡΠ·ΠΈΠΈ Π½Π° ΡΠ»ΠΈΠΊΠΈΡΠ΅ Π½Π° Alpine Linux Docker (ΠΎΠ΄ Π²Π΅ΡΠ·ΠΈΡΠ° 3.3) ΡΠΎΠ΄ΡΠΆΠ°Ρ NULL Π»ΠΎΠ·ΠΈΠ½ΠΊΠ° Π·Π° root ΠΊΠΎΡΠΈΡΠ½ΠΈΠΊΠΎΡ. ΠΠ²Π°Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡ ΠΏΡΠΎΠΈΠ·Π»Π΅Π·Π΅ ΠΎΠ΄ ΡΠ΅Π³ΡΠ΅ΡΠΈΡΠ° Π²ΠΎΠ²Π΅Π΄Π΅Π½Π° Π²ΠΎ Π΄Π΅ΠΊΠ΅ΠΌΠ²ΡΠΈ 2015 Π³ΠΎΠ΄ΠΈΠ½Π°. Π‘ΡΡΡΠΈΠ½Π°ΡΠ° Π½Π° ΠΎΠ²Π° Π΅ Π΄Π΅ΠΊΠ° ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ ΡΠ°ΡΠΏΠΎΡΠ΅Π΄Π΅Π½ΠΈ ΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΡΠΈΡΠ½ΠΈ Π²Π΅ΡΠ·ΠΈΠΈ Π½Π° Alpine Linux Π²ΠΎ ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΈ ΠΊΠΎΡΠΈΡΡΠ°Ρ Linux PAM ΠΈΠ»ΠΈ Π΄ΡΡΠ³ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ ΡΡΠΎ ΡΠ° ΠΊΠΎΡΠΈΡΡΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° Π²ΠΎ ΡΠ΅Π½ΠΊΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ ΠΊΠ°ΠΊΠΎ Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π·Π° Π°Π²ΡΠ΅Π½ΡΠΈΠΊΠ°ΡΠΈΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠΈΡΠ°ΡΠ°Ρ NULL Π»ΠΎΠ·ΠΈΠ½ΠΊΠ° Π·Π° root ΠΊΠΎΡΠΈΡΠ½ΠΈΠΊΠΎΡ.
ΠΠ΅ΡΠ·ΠΈΠΈΡΠ΅ Π½Π° Docker ΡΠ»ΠΈΠΊΠΈ ΡΠΎ Alpine ΡΠ΅ΡΡΠΈΡΠ°Π½ΠΈ Π·Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΡ Π±Π΅Π° 3.3β3.9 Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ, ΠΊΠ°ΠΊΠΎ ΠΈ Π½Π°ΡΠ½ΠΎΠ²ΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° edge.
ΠΠ²ΡΠΎΡΠΈΡΠ΅ ΡΠ° Π΄Π°Π΄ΠΎΠ° ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΠΏΡΠ΅ΠΏΠΎΡΠ°ΠΊΠ° Π·Π° ΠΏΠΎΠ³ΠΎΠ΄Π΅Π½ΠΈΡΠ΅ ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΈ:
βRoot-ΡΠΌΠ΅ΡΠΊΠ°ΡΠ° ΠΌΠΎΡΠ° Π΄Π° Π±ΠΈΠ΄Π΅ Π΅ΠΊΡΠΏΠ»ΠΈΡΠΈΡΠ½ΠΎ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½Π° Π²ΠΎ ΡΠ»ΠΈΠΊΠΈΡΠ΅ Π½Π° Docker Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΠΎΠ΄ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΡΠΈΡΠ½ΠΈ Π²Π΅ΡΠ·ΠΈΠΈ Π½Π° Alpine. ΠΠ΅ΡΠΎΡΠ°ΡΠ½Π°ΡΠ° Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡΠ° Π½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠ° Π·Π°Π²ΠΈΡΠΈ ΠΎΠ΄ ΠΎΠΊΠΎΠ»ΠΈΠ½Π°ΡΠ°, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π½Π΅ΡΠ·ΠΈΠ½ΠΈΠΎΡ ΡΡΠΏΠ΅Ρ Π±Π°ΡΠ° Π½Π°Π΄Π²ΠΎΡΠ΅ΡΠ½ΠΎ ΠΏΡΠΎΡΠ»Π΅Π΄Π΅Π½Π° ΡΡΠ»ΡΠ³Π° ΠΈΠ»ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ° ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ Linux PAM ΠΈΠ»ΠΈ Π΄ΡΡΠ³ ΡΠ»ΠΈΡΠ΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌβ.
ΠΡΠΎΠ±Π»Π΅ΠΌΠΎΡ Π±Π΅ΡΠ΅ /etc/shadow
ΠΈΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π΄Π°Π»ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠ²Π° linux-pam
.
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΡΠ²Π° ΡΠΎ Docker Hub
ΠΠ΅ΡΠΈ ΠΠ΅ΠΌΠ±Π»ΠΈΠ½ ΡΠ΅ΡΠΈ Π΄Π° Π±ΠΈΠ΄Π΅ ΡΡΠ±ΠΎΠΏΠΈΡΠ΅Π½ Π·Π° ΡΠΎΠ° βΠΊΠΎΠ»ΠΊΡ Π΅ Π²ΠΎΠΎΠ±ΠΈΡΠ°Π΅Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°ΡΠ° Π½Π° ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½ΡΠ»ΡΠΈ Π»ΠΎΠ·ΠΈΠ½ΠΊΠΈ Π²ΠΎ ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΈβ. ΠΠ° ΡΠ°Π° ΡΠ΅Π» Π½Π°ΠΏΠΈΡΠ° ΠΌΠ°Π»
- ΠΏΡΠ΅ΠΊΡ Π±Π°ΡΠ°ΡΠ΅ Π·Π° ΡΠ²ΠΈΡΠΊΡΠ²Π°ΡΠ΅ Π΄ΠΎ API Π²ΠΎ Docker Hub, ΡΠ΅ Π±Π°ΡΠ° Π»ΠΈΡΡΠ° Π½Π° ΡΠ»ΠΈΠΊΠΈ Π½Π° Docker Ρ ΠΎΡΡΠΈΡΠ°Π½ΠΈ ΡΠ°ΠΌΡ;
- ΠΏΡΠ΅ΠΊΡ jq ΡΠ΅ ΠΏΠΎΠ΄ΡΠ΅Π΄ΡΠ²Π° ΠΏΠΎ ΠΏΠΎΠ»Π΅
popularity
, Π° ΠΎΠ΄ Π΄ΠΎΠ±ΠΈΠ΅Π½ΠΈΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ ΠΎΡΡΠ°Π½ΡΠ²Π° ΠΏΡΠ²Π°ΡΠ° ΠΈΠ»ΡΠ°Π΄Π°; - Π·Π° ΡΠ΅ΠΊΠΎΡ ΠΎΠ΄ Π½ΠΈΠ² ΡΠ΅ ΠΈΡΠΏΠΎΠ»Π½ΡΠ²Π°
docker pull
; - Π·Π° ΡΠ΅ΠΊΠΎΡΠ° ΡΠ»ΠΈΠΊΠ° Π΄ΠΎΠ±ΠΈΠ΅Π½Π° ΠΎΠ΄ Docker Hub ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°
docker run
ΡΠΎ ΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΡΠ²ΠΈΠΎΡ ΡΠ΅Π΄ ΠΎΠ΄ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ°/etc/shadow
; - Π°ΠΊΠΎ Π²ΡΠ΅Π΄Π½ΠΎΡΡΠ° Π½Π° Π½ΠΈΠ·Π°ΡΠ° Π΅ Π΅Π΄Π½Π°ΠΊΠ²Π° Π½Π°
root:::0:::::
, ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΠ»ΠΈΠΊΠ°ΡΠ° Π΅ Π·Π°ΡΡΠ²Π°Π½ΠΎ Π²ΠΎ ΠΏΠΎΡΠ΅Π±Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°.
Π¨ΡΠΎ ΡΠ΅ ΡΠ»ΡΡΠΈ? ΠΠ
βΠΠ΅ΡΡ Π½Π°ΡΠΏΠΎΠ·Π½Π°ΡΠΈΡΠ΅ ΠΈΠΌΠΈΡΠ° Π½Π° ΠΎΠ²Π°Π° Π»ΠΈΡΡΠ° Π±Π΅Π° govuk/governmentpaas, hashicorp, microsoft, monsanto ΠΈ mesosphere. Π kylemanna/openvpn Π΅ Π½Π°ΡΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅Ρ Π½Π° Π»ΠΈΡΡΠ°ΡΠ°, Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΠΈΠ·Π½Π΅ΡΡΠ²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΠ΄ 10 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΠΏΠΎΠ²Π»Π΅ΠΊΡΠ²Π°ΡΠ°β.
Π‘Π΅ΠΏΠ°ΠΊ, Π²ΡΠ΅Π΄ΠΈ Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠ΅ΡΠΈΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΎΠ²ΠΎΡ ΡΠ΅Π½ΠΎΠΌΠ΅Π½ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅ Π½Π΅ Π·Π½Π°ΡΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡ Π²ΠΎ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ ΡΡΠΎ Π³ΠΈ ΠΊΠΎΡΠΈΡΡΠ°Ρ: ΡΠ΅ Π·Π°Π²ΠΈΡΠΈ ΠΎΠ΄ ΡΠΎΠ° ΠΊΠ°ΠΊΠΎ ΡΠΎΡΠ½ΠΎ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ. (Π²ΠΈΠ΄ΠΈ ΠΊΠΎΠΌΠ΅Π½ΡΠ°Ρ ΠΎΠ΄ ΡΠ»ΡΡΠ°ΡΠΎΡ ΠΠ»ΠΏΠΈΠ½ ΠΏΠΎΠ³ΠΎΡΠ΅). Π‘Π΅ΠΏΠ°ΠΊ, ΠΌΠ½ΠΎΠ³ΡΠΏΠ°ΡΠΈ ΡΠΌΠ΅ Π³ΠΎ Π²ΠΈΠ΄Π΅Π»Π΅ βΠΌΠΎΡΠ°Π»ΠΎΡ Π½Π° ΠΏΡΠΈΠΊΠ°Π·Π½Π°ΡΠ°β: ΠΎΡΠΈΠ³Π»Π΅Π΄Π½Π°ΡΠ° Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎΡΡ ΡΠ΅ΡΡΠΎ ΠΈΠΌΠ° Π½Π΅Π³Π°ΡΠΈΠ²Π½Π° ΡΡΡΠ°Π½Π°, ΠΊΠΎΡΠ° ΡΠ΅ΠΊΠΎΠ³Π°Ρ ΠΌΠΎΡΠ° Π΄Π° ΡΠ΅ ΠΏΠ°ΠΌΠ΅ΡΠΈ ΠΈ ΡΠΈΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΈΡΠΈ ΡΠ΅ Π·Π΅ΠΌΠ°Π°Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π²ΠΎ ΡΡΠ΅Π½Π°ΡΠΈΡΠ°ΡΠ° Π½Π° Π²Π°ΡΠ°ΡΠ° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΡΠΊΠ° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°.
PS
ΠΡΠΎΡΠΈΡΠ°ΡΡΠ΅ ΠΈ Π½Π° Π½Π°ΡΠΈΠΎΡ Π±Π»ΠΎΠ³:
- Β«
Π‘ΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π·Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π²ΠΎ ΡΠ»ΠΈΠΊΠΈ Π½Π° Docker Hub "; - Β«
Docker ΠΈ Kubernetes Π²ΠΎ ΡΡΠ΅Π΄ΠΈΠ½ΠΈ ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΈ Π½Π° Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡ "; - Β«
Π Π°Π½Π»ΠΈΠ²ΠΎΡΡ CVE-2019-5736 Π²ΠΎ runc, ΡΡΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° ΡΡΠ΅ΠΊΠ½Π΅ΡΠ΅ root ΠΏΡΠ°Π²Π° Π½Π° Π΄ΠΎΠΌΠ°ΡΠΈΠ½ΠΎΡ "; - Β«
Π Π°Π½Π»ΠΈΠ² Docker VM - Π²ΠΈΡΡΡΠ΅Π»Π½Π° Π·Π°Π³Π°ΡΠΊΠ° Π·Π° Docker ΠΈ ΠΏΠ΅Π½ΡΠΈΡΠ°ΡΠ΅ ".
ΠΠ·Π²ΠΎΡ: www.habr.com