עם הפלישה הגרמנית לברית המועצות לא גויס לצבא כיוון שהיה פטור מהגיוס מתוקף תפקידו כחבר מועצת העיר, אך באוקטובר 1941 התנדב לצבא. הוא מונה למפקד מחלקת קשר בחטיבה הימית מס' 76 - חטיבת חי"ר שהורכבה מלוחמי צי הים השחור שספינותיהם טובעו או הוצאו מכלל שימוש. במסגרת החטיבה לחם בדרום רוסיה, בצפון הקווקז, השתתף בקרבות לשחרור העיר רוסטוב ובקרב קורסק. התקדם בסולם הדרגות והתפקידים - היה מפקד פלוגה, סגן מפקד גדוד ובקיץ 1943 מונה לתפקיד מג"ד. במהלך הקרבות נפצע כמה פעמים. באוקטובר 1943 פורקה החטיבה ושפירו הועבר לדיוויזיית הרגלים ה-100, בה מונה לתפקיד מפקד אחד הגדודים. יחד עם יחידתו השתתף בצליחת נהר הדנייפר ובקרבות לשחרור קייב, בשחרור בלארוס ופולין.