91³Ô¹ÏÍø

Watch CBS News

Inspector general finds O'Hare Airport workers drinking on the job, CPD employees committing PPP fraud

O'Hare International Airport workers drinking on the job and Chicago Police Department employees scamming the federal government were just some of the jaw-dropping findings in the latest quarterly report from the city's inspector general.

Inspector General Deborah Witzburg's job is to sniff out wrongdoing by city workers, and her office's first quarterly report of 2026 revealed a stunning number of findings that involve scamming, scheming, and illegally profiting from work as a city employee.

"These are people who are supposed to be on the clock, working at the airports, and instead they are drinking at bars nearby," Witzburg said.

In her office's final report before she steps down when her term in office ends later this month, Witzburg's team reported eight employees at the Chicago Department of Aviation were caught drinking alcohol while on the clock.

"At a party thrown by an off-duty CDA employee, several on-the-clock CDA employees drank beer, cocktails, and shots of liquor before returning to O'Hare to complete their shifts. Many of the employees' supervisors and colleagues were aware of the drinking but did nothing about it. On multiple occasions, CDA employees drank alcohol while out to lunch with their supervisors and, in some instances, the supervisors paid for the alcohol," the report states.

At least six other Department of Aviation workers were investigated for spending hours idling on the job, demonstrating incompetence, stealing city property, and lying during the investigation.

"This is an abuse of the public trust, it's a misuse of taxpayer dollar dollars, and we have people not doing the jobs that the taxpayers are paying them to do," Witzburg said.

The Department of Aviation agreed to terminate seven employees and put them on the do not hire list and to discipline four others. Three others had transferred to other city departments before the inspector general's investigation was completed. Two of those were fired and the other was disciplined.

Meantime, Witzburg's team also uncovered a disturbing trend at the Chicago Police Department.

"Ten city employees whom we found to have committed [Paycheck Protection Program] fraud; nine of these were members – current or former members – of the Chicago Police Department, one of them was a City Council employee," Witzburg said.

According to the report, workers illegally pocketed between $20,000 and more than $41,000 in Paycheck Protection Program loans from a massive federal COVID-19 pandemic relief effort – some by concocting companies that didn't exist to pocket federal assistance funds.

The Police Department agreed with the inspector general's recommendation to fire the nine CPD employees accused of PPP fraud and place them on the do not hire list. The inspector general also recommended the one aldermanic employee accused of PPP fraud be fired and placed on the do not hire list, but the alderperson has yet to indicate if they agree with the findings.

"You don't get to both defraud the government and work for the government," Witzburg said.

In another investigation at City Hall, Witzburg's report said a former mayor's office staffer got their child a job with a city contractor, and then as a possible payback, "attempted to facilitate $9.6 million in payments to the contractor to which the contractor was not entitled."

"People who enjoy the tremendous privilege of working in the public service do not get to use the authority of their city position for their personal benefit or for the benefit of their family," Witzburg said.

Mayor Brandon Johnson said that employee was from a prior administration. That former staffer could be fined up to $20,000 if the city's Board of Ethics agrees with the inspector general's misconduct finding.

Witzburg wraps up her term as inspector general next week, and said her office has faced "real challenges with cooperation" from the Johnson administration.

"I believe we have seen a pattern from the Johnson administration, and particularly the Law Department, in blocking OIG's access to the informarion we need to do our work," she said.

Johnson said Witzburg's assessment of his administration's cooperation is not true.

"Listen, I'm committed to having an open process. There's nothing about my administration that has been surreptitious in any form," he said.

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=296763317a51cab90faa73f1bb146d5c'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });