UnixͨÓôòӡϵͳcups-browsedÔ¶³Ì´úÂëÖ´Ðзì϶·ÖÎö
°ä²¼¹¦·ò 2024-12-13Ò»¡¢·ìϼûèÊö
2024Äê9Ô£¬£¬£¬£¬£¬£¬£¬°²È«×êÑÐÔ±Simone MargaritelliÅû¶ÁËUnixͨÓôòӡϵͳCUPS(Common UNIX Printing System)´æÔÚһϵÁа²È«·ì϶£¬£¬£¬£¬£¬£¬£¬ÀûÓöà¸ö·ì϶×éºÏ¿ÉÔÚÊÜÓ°ÏìµÄϵͳÉÏÖ´ÐÐÔ¶³ÌºÅÁî¡£¡£¡£¡£¡£8827Ì«Ñô¼¯ÍÅADLab×êÑÐÈËÔ±¶Ô¸Ã·ì϶µÄµÀÀí½øÐÐÉî¿Ì·ÖÎö£¬£¬£¬£¬£¬£¬£¬Í¬Ê±Ìá³ö½¨¸´½¨Ò黺ºÍ½â´ëÊ©¡£¡£¡£¡£¡£

CUPSÊÇÒ»¸ö¿ªÔ´µÄ´òӡϵͳ£¬£¬£¬£¬£¬£¬£¬ÓÃÓÚLinuxºÍÆäËûÀàUNIX²Ù×÷ϵͳ¡£¡£¡£¡£¡£CUPS Ìṩ Web½çÃæºÍBerkeleyºÅÁîÐнçÃæµÈ¶àÖÖ·½Ê½À´ÖÎÀí´òÓ¡»úºÍ´òÓ¡¹¤×÷¡£¡£¡£¡£¡£ÀýÈç½Ó¼ûhttp://localhost:631¿ÉÖÎÀí´òÓ¡»ú¡£¡£¡£¡£¡£

CUPSÖØÒªÊ¹ÓÃInternet Printing Protocol(IPP)À´ÊµÏÖ±¾µØºÍÍøÂç´òÓ¡»úµÄ´òÓ¡Ö°ÄÜ¡£¡£¡£¡£¡£IPPÊÇÒ»¸öÔÚ»¥ÁªÍøÉÏ´òÓ¡µÄ³ß¶ÈÍøÂçºÍ̸£¬£¬£¬£¬£¬£¬£¬Ëü´ðÀíÓû§Äܹ»Í¨¹ý»¥ÁªÍø×÷Ô¶¾àÀë´òÓ¡¼°ÖÎÀí´òÓ¡¹¤×÷µÈ¡£¡£¡£¡£¡£IPPѡȡµÄ³¬Îı¾´«ÊäºÍ̸HTTPµÄPOST²½ÖèÔÚ¿Í»§¶ËºÍ´òÓ¡·þÎñÆ÷Ö®¼ä½øÐлỰ¡£¡£¡£¡£¡£

cups-browsedÊÇÒ»¸ö¿ªÔ´µÄ´òÓ¡·þÎñ×é¼þ£¬£¬£¬£¬£¬£¬£¬ËüÊÇCommon UNIX Printing System(CUPS)µÄÒ»²¿ÃÅ¡£¡£¡£¡£¡£cups-browsedÕÆ¹ÜÔÚ±¾µØÍøÂçÉÏ×Ô¶¯·¢ÏÖºÍÔö³¤´òÓ¡»ú£¬£¬£¬£¬£¬£¬£¬Ê¹ÓÃmDNS£¨¶à²¥DNS£©»òDNS-SD£¨DNS·þÎñ·¢ÏÖ£©ºÍ̸À´Õì²âÍøÂçÉϵĴòÓ¡É豸¡£¡£¡£¡£¡£ËüʹµÃÓû§¿ÉÄÜÎÞÐèÊÖ¶¯ÅäÖü´¿ÉʹÓÃÍøÂç´òÓ¡»ú¡£¡£¡£¡£¡£
¸Ã·ì϶ԴÓÚcups-browsed·þÎñ£¬£¬£¬£¬£¬£¬£¬¸Ã·þÎñ°ó¶¨ÔÚUDP INADDR_ANY:631¶Ë¿ÚÉÏ£¬£¬£¬£¬£¬£¬£¬½ÓÊÜÈκÎip·¢Ë͹ýÀ´Êý¾Ý¡£¡£¡£¡£¡£Í¬Ê±¸Ã·þÎñÊÊÅä´óÎÞÊýUNIXϵͳ£¬£¬£¬£¬£¬£¬£¬ÇÒ´óÎÞÊýÉ豸ĬÈÏ¿ªÆô¸Ã·þÎñ¡£¡£¡£¡£¡£
¸Ã·þÎñµÄÖ°ÄÜÊÇ·¢ÏÖ»¥ÁªÍøÉϵĴòÓ¡»ú£¬£¬£¬£¬£¬£¬£¬¶øºó½«´òÓ¡»úÔö³¤µ½ÏµÍ³·þÎñÉÏ£¬£¬£¬£¬£¬£¬£¬ÓйØÖ°ÄܵÄʵÏÖ´úÂëÔÚcups-browsed.cÎļþÖС£¡£¡£¡£¡£´úÂëÖд´½¨Ò»¸öÃûΪBrowseSocketµÄÌ×½Ó×Ö£¬£¬£¬£¬£¬£¬£¬¶øºó°ó¶¨ÔÚ631¶Ë¿Ú¡£¡£¡£¡£¡£

µ±²é³µ½ÏµÍ³Ö§³ÖBrowseRemoteProtocolsʱ£¬£¬£¬£¬£¬£¬£¬´´½¨Ò»¸ö UNIX Ì×½Ó×Öͨ·£¬£¬£¬£¬£¬£¬£¬²¢ÉèÖüල¸Ãͨ·ÉϵÄÊäÈëÊÂÎñ¡£¡£¡£¡£¡£Ò»µ©º±¼û¾Ý¿É¶Á£¬£¬£¬£¬£¬£¬£¬½«Å²ÓÃprocess_browse_dataº¯ÊýÀ´´¦ÖÃÕâЩÊý¾Ý¡£¡£¡£¡£¡£

BrowseRemoteProtocols²ÎÊý¿Éͨ¹ý/etc/cups/cups-browsed.confÎļþ½øÐÐÅäÖ㬣¬£¬£¬£¬£¬£¬´Ë´¦Í¨³£Ä¬ÈÏ¿ªÆô¡£¡£¡£¡£¡£

process_browse_dataÊǹؼüµÄÊý¾Ý´¦Öú¯Êý£¬£¬£¬£¬£¬£¬£¬¸Ãº¯ÊýŲÓÃrecvfrom´ÓBrowseSocketÌ×½Ó×Ö¶ÁÈ¡Êý¾Ý°üpacket¡£¡£¡£¡£¡£Êý¾Ý°üÌåʽ×ñ´ÓHEX_NUMBER HEX_NUMBER TEXT_DATA£¬£¬£¬£¬£¬£¬£¬Ê¹ÓøÃÌåʽµÄÊý¾ÝµÄÔÒòʱÊÇ·¨Ê½ÔÚ´¦ÖÃpacketʱʹÓÃÁËÏÂÃæµÄº¯Êý¶ÔÊý¾Ý½øÐд¦Öᣡ£¡£¡£¡£
½Ó¹Üµ½Êý¾Ý°üºó»áŲÓÃallowedº¯Êý¶Ôip½øÐкÏÀíÐԲ鳣¬£¬£¬£¬£¬£¬£¬¸Ã²é³¹æ¶¨¿Éͨ¹ý/etc/cups/cups-browsed.confÎļþ½øÐÐÅäÖᣡ£¡£¡£¡£

allowed²é³Í¨¹ýºó»á½«Êý¾Ý°ü´«Èëfound_cups_printerº¯Êý½øÇ°½øÒ»²½´¦Öᣡ£¡£¡£¡£
found_cups_printerº¯ÊýÖÐŲÓÃhttpSeparateURIº¯Êý½âÎö´«ÈëµÄuri²ÎÊý²¢½«Æä²ð·ÖΪºÍ̸¡¢Óû§Ãû¡¢Ö÷»úÃû¡¢¶Ë¿Ú¡¢×ÊÔ´õè¾¶µÈ²¿ÃÅ¡£¡£¡£¡£¡£¶øºóƾ¾Ý½âÎöµÃµ½µÄ¸÷²¿ÃÅÐÅÏ¢£¬£¬£¬£¬£¬£¬£¬¶ÔuriÊÇ·ñµÅ×Ú¡±/printers/¡±ºÍ¡±/calsses/¡±×Ö·û´®½øÐв鳡£¡£¡£¡£¡£²é³Í¨¹ýºóŲÓÃexamine_discovered_printer_recordº¯ÊýÀ´´¦Ö÷¢ÏֵĴòÓ¡»ú¼Í¼¡£¡£¡£¡£¡£

´¦ÖÃÍêÊý¾ÝºóŲÓÃcfGetPrinterAttributesº¯Êý½øÐлØÁ¬£¬£¬£¬£¬£¬£¬£¬ÆäÖÐÏÈʹÓÃhttpConnectº¯ÊýÏȳÉÁ¢httpÏνӣ¬£¬£¬£¬£¬£¬£¬¶øºóŲÓÃippNewRequest³ÉÁ¢IPPÏνӣ¬£¬£¬£¬£¬£¬£¬×îºóÏòIPP Server·¢ËÍ»ñÈ¡´òÓ¡»úÊôÐÔµÄÒªÇ󡣡£¡£¡£¡£

·¢ËÍÍêÒªÇóºócups-browsed·¨Ê½»áŲÓÃppdCreatePPDFromIPP2º¯Êý´´½¨PPDÎļþ¶øºó½«½Ó¹ÜµÄ´òÓ¡»úÊôÐÔ˳´Î±£Áôµ½ÎļþÀïÃæ¡£¡£¡£¡£¡£

ÖÁ´Ë£¬£¬£¬£¬£¬£¬£¬ÒѾÄܹ»³É¹¦ÉèÖÃPPDµÄÊôÐÔ£¬£¬£¬£¬£¬£¬£¬½ÓÏÂÀ´¾ÍÊÇÉè·¨×ÓÖ´ÐÐдÈëµÄÊý¾Ý¡£¡£¡£¡£¡£Õâ±ØÒªÊ¹ÓÃCUPSµÄÒ»¸ö¹ýÂËÆ÷Ö¸ÁîcupsFilter2£¬£¬£¬£¬£¬£¬£¬¸ÃÖ¸ÁîÓÃÓÚ´¦ÖôòÓ¡×÷ÒµÖеÄɸѡºÍת»»²Ù×÷¡£¡£¡£¡£¡£
ÀýÈçÏÂÃæµÄÖ¸ÁîÒªÇócups½«ÇкϴòÓ¡»úÊôÐÔµÄpostscriptÌåʽµÄÊý¾Ý´«µÝ¸øprogram¹ýÂËÆ÷½øÐд¦Ö㬣¬£¬£¬£¬£¬£¬ÓÅÏȼ¶Îª0¡£¡£¡£¡£¡£
CUPS»®¶¨Ö»ÄÜʹÓÃ/usr/lib/cups/filterõè¾¶ÏÂÃæµÄ¿ÉÖ´ÐÐÎļþ£¬£¬£¬£¬£¬£¬£¬×îÖÕÒÔfoomatic-rip¹ýÂËÆ÷×÷ΪÀûÓõÄÖ¸±ê¡£¡£¡£¡£¡£¸Ã¹ýÂËÆ÷½ÓÊÜPPDÎļþÖеÄFoomaticRIPCommandLineÖ¸Á£¬£¬£¬£¬£¬£¬Í¨¹ýËüÄܹ»Ö´ÐÐËÁÒâºÅÁî¡£¡£¡£¡£¡£
½ØÖÁĿǰ£¬£¬£¬£¬£¬£¬£¬Ubuntu£¬£¬£¬£¬£¬£¬£¬Debian£¬£¬£¬£¬£¬£¬£¬FedoraµÈ¶à¸öϵͳÖÐÉæ¼°·ì϶µÄ¶à¸ö°æ±¾ÒѸù»ù½¨¸´¡£¡£¡£¡£¡£

ÔÚUbuntu×îаæµÄ½¨¸´¹æ»®ÖÐÆëȫɾ³ý¶Ô¾É°æ CUPS ºÍ̸ºÍ LDAP µÄÖ§³Ö¡£¡£¡£¡£¡£

·ì϶½¨¸´°æ±¾ÒѾÉÏ´«£¬£¬£¬£¬£¬£¬£¬UbuntuϵͳÖÐÔËÐÐÏÂÃæÁ½ÌõºÅÁî¼´¿É½øÐÐÉý¼¶¡£¡£¡£¡£¡£
sudo apt update
sudo apt upgrade
ÈôÊÇÉÏÃæµÄÉý¼¶²»³É¹¦£¬£¬£¬£¬£¬£¬£¬Ê¹ÓÃÏÂÃæÁ½ÖÖ·¨×Ó»º½â¸Ã·ì϶£º
£¨1£©Ö±½Ó½ûÓÃcups-browsed·þÎñ
sudo systemctl stop cups-browsed
sudo systemctl disable cups-browsed
£¨2£©ÈôÊǸÃÖ°ÄܱØÒªÊ¹Ó㬣¬£¬£¬£¬£¬£¬½¨Ò齫/etc/cups/cups-browsed.confÖÐBrowseRemoteProtocolsÖ¸ÁîÖµ´ÓĬÈϵġ°dnssd cups¡±¸ü¸ÄΪ¡°none¡±¡£¡£¡£¡£¡£
²Î¿¼Á´½Ó£º
[1]https://www.evilsocket.net/2024/09/26/Attacking-UNIX-systems-via-CUPS-Part-I/
[2]https://gist.github.com/stong/c8847ef27910ae344a7b5408d9840ee1
[3]https://censys.com/common-unix-printing-service-vulnerabilities/
[4]https://blog.ostorlab.co/cups-vulnerabilities.html
[5]https://github.com/OpenPrinting/cups-browsed/security/advisories/GHSA-rj88-6mr5-rcw8
[6]https://ubuntu.com/security/notices/USN-7043-4
[7]https://ubuntu.com/security/notices/USN-7042-3
[8]https://launchpad.net/ubuntu/+source/cups-browsed/2.0.1-0ubuntu2.1
[9]https://www.upwind.io/feed/analyzing-the-latest-cups-rce-vulnerability-threats-and-mitigations
8827Ì«Ñô¼¯ÍÅ»ý¼«·ÀÓù³¢ÊÔÊÒ£¨ADLab£©
ADLab³ÉÁ¢ÓÚ1999Ä꣬£¬£¬£¬£¬£¬£¬ÊÇÖйú°²È«ÐÐÒµ×îÔç³ÉÁ¢µÄ¹¥·À¼¼Êõ×êÑг¢ÊÔÊÒÖ®Ò»£¬£¬£¬£¬£¬£¬£¬Î¢ÈíMAPP´òËãÖ÷Ìâ³ÉÔ±£¬£¬£¬£¬£¬£¬£¬¡°ºÚȸ¹¥»÷¡±¸ÅÏëÊ×ÍÆÕß¡£¡£¡£¡£¡£½ØÖÁĿǰ£¬£¬£¬£¬£¬£¬£¬ADLabÒÑͨ¹ý CNVD/CNNVD/NVDB/CVEÀۼư䲼°²È«·ì϶5000Óà¸ö£¬£¬£¬£¬£¬£¬£¬³ÖÐøÎ¬³Ö¹ú¼ÊÍøÂ簲ȫÁìÓòÒ»Á÷Ë®×¼¡£¡£¡£¡£¡£³¢ÊÔÊÒ×êÑз½Ïòº¸Ç»ù´¡°²È«×êÑÓ×¢Êý¾Ý°²È«×êÑÓ×¢5G°²È«×êÑÓ×¢ÈËΪÖÇÄܰ²È«×êÑÓ×¢ÒÆ¶¯°²È«×êÑÓ×¢ÎïÁªÍø°²È«×êÑÓ×¢³µÁªÍø°²È«×êÑÓ×¢¹¤¿Ø°²È«×êÑÓ×¢ÐÅ´´°²È«×êÑÓ×¢ÔÆ°²È«×êÑÓ×¢ÎÞÏß°²È«×êÑÓ×¢¸ß¼¶Íþв×êÑÓ×¢¹¥·Àϵͳ½¨Éè¡£¡£¡£¡£¡£×êÑгɾÍÀûÓÃÓÚ²úÆ·Ö÷Ìâ¼¼Êõ×êÑÓ×¢¹ú¶È³Áµã¿Æ¼¼ÏîÄ¿¹¥¹Ø¡¢×¨Òµ°²È«·þÎñµÈ¡£¡£¡£¡£¡£



¾©¹«Íø°²±¸11010802024551ºÅ