Ny vulnerability amin'ny tranokalan'ny tambajotra amin'ny fiteny Rust and Go izay ahafahanao mandingana ny fanamarinana adiresy IP

Ny vulnerability mifandraika amin'ny fanodinana diso ny adiresy IP miaraka amin'ny isa octal amin'ny asa fanaparitahana adiresy dia hita ao amin'ny tranomboky mahazatra amin'ny fiteny Rust and Go. Ny vulnerabilities dia ahafahan'ny mandingana ny fisavana ny adiresy manan-kery amin'ny fampiharana, ohatra, ny fandaminana ny fidirana amin'ny adiresin'ny interface loopback (127.xxx) na ny subnets intranet rehefa manao fanafihana SSRF (Server-side request forgery). Ny vulnerabilities dia manohy ny tsingerin'ny olana efa fantatra teo aloha tao amin'ny tranokala node-netmask (JavaScript, CVE-2021-28918, CVE-2021-29418), private-ip (JavaScript, CVE-2020-28360), ipaddress (Python, CVE- 2021-29921 ), Data ::Validate ::IP (Perl, CVE-2021-29662) ary Net ::Netmask (Perl, CVE-2021-29424).

Araka ny famaritana, ny soatoavin'ny tady adiresy IP manomboka amin'ny aotra dia tokony ho raisina ho isa octal, fa trano famakiam-boky maro no tsy mandray an'izany ary manary fotsiny ny aotra, mitondra ny sanda ho isa decimal. Ohatra, ny isa 0177 amin'ny octal dia mitovy amin'ny 127 amin'ny decimal. Ny mpanafika dia afaka mangataka loharano amin'ny famaritana ny sanda "0177.0.0.1", izay mifanandrify amin'ny "127.0.0.1" amin'ny fanamarihana decimal. Raha ny trano famakiam-boky misy olana no ampiasaina dia tsy ho hitan'ny fampiharana fa ny adiresy 0177.0.0.1 dia ao amin'ny subnet 127.0.0.1/8, fa raha ny marina, rehefa mandefa fangatahana dia afaka miditra amin'ny adiresy "0177.0.0.1" izy. Ny fiasan'ny tambajotra dia hizotra ho 127.0.0.1. Toy izany koa, azonao atao ny mamitaka ny fanamarinana ny fidirana amin'ny adiresin'ny intranet amin'ny alΓ lan'ny famaritana ny soatoavina toy ny "012.0.0.1" (mitovy amin'ny "10.0.0.1").

Ao amin'ny Rust, ny tranomboky mahazatra "std::net" dia nisy fiantraikany tamin'ny olana iray (CVE-2021-29922). Ny mpizara adiresy IP an'ity tranomboky ity dia nanary aotra alohan'ny sanda ao amin'ny adiresy, fa raha tsy mihoatra ny telo isa no voatondro, ohatra, ny "0177.0.0.1" dia ho raisina ho sanda tsy mety, ary vokatra diso. dia haverina ho valin'ny 010.8.8.8 sy 127.0.026.1 . Ireo fampiharana mampiasa std::net::IpAddr rehefa mamakafaka ny adiresy voatondron'ny mpampiasa dia mety ho tratran'ny SSRF (fangatahana hosoka amin'ny lafiny server), RFI (Fampidirana rakitra lavitra) ary LFI (Fampidirana rakitra eo an-toerana). Ny vulnerability dia napetraka tao amin'ny sampana Rust 1.53.0.

Ny vulnerability amin'ny tranokalan'ny tambajotra amin'ny fiteny Rust and Go izay ahafahanao mandingana ny fanamarinana adiresy IP

Ao amin'ny Go, misy olana ny tranomboky mahazatra "net" (CVE-2021-29923). Ny net.ParseCIDR voaorina dia mitsambikina ny aotra alohan'ny isa octal fa tsy manodina azy ireo. Ohatra, ny mpanafika dia afaka mandalo ny sandan'ny 00000177.0.0.1, izay, rehefa jerena ao amin'ny net.ParseCIDR(00000177.0.0.1/24) dia ho voasokajy ho 177.0.0.1/24, fa tsy 127.0.0.1/24. Miseho ao amin'ny sehatra Kubernetes ihany koa ny olana. Ny vulnerability dia raikitra ao amin'ny Go release 1.16.3 sy beta 1.17.

Ny vulnerability amin'ny tranokalan'ny tambajotra amin'ny fiteny Rust and Go izay ahafahanao mandingana ny fanamarinana adiresy IP


Source: opennet.ru

Add a comment