PHP2Shell 공지를 보고 점검했더니 PHP가 하나도 없었습니다

이미지
10월 21일에 PHP와 Node.js가 같은 날 보안 패치를 냈습니다. PHP 쪽은 사람들이 PHP2Shell이라고 부르고 있고, Node 쪽은 Node2Shell이라는 이름이 붙었습니다. 이름부터가 좀 무섭습니다. 뒤에 Shell이 붙으면 대개 남의 서버에서 명령을 실행할 수 있다는 뜻이니까요. 회사에서도 바로 지시가 내려왔습니다. 전 프로젝트 점검하고, 외부 IP 붙은 서버는 전수조사하라는 내용이었습니다. 회사 쪽 일은 회사 쪽대로 하고, 저는 퇴근하고 개인 프로젝트랑 예전에 알바로 했던 것들을 한번 열어 봤습니다. 그런데 열어 보고 나니 이번 글은 패치 이야기가 아니라 7년 전 이야기가 됐습니다. PHP2Shell과 Node2Shell, 둘이 같은 무게는 아닌 것 같습니다 찾아오신 분들은 아마 이게 뭔지, 내 서버가 해당되는지부터 궁금하실 것 같아서 그것부터 적습니다. PHP2Shell은 CVE 두 건입니다. CVE-2026-109618 과 CVE-2026-109619이고, 둘 다 인증 없이 원격에서 코드를 실행할 수 있는 취약점입니다. CVSS 4.0 기준 9.2점입니다. 하나는 메모리가 부족할 때 PHP가 요청 데이터를 반쯤 만든 상태에서 멈추고, 정리 단계에서 그 망가진 데이터를 멀쩡한 걸로 취급하는 문제입니다. 다른 하나는 요청이 끝난 뒤에도 그 요청이 쓰던 상태가 남아 있다가 같은 워커가 받은 다음 요청에서 다시 쓰이는 문제입니다. PHP 공식 공지 기준으로 고쳐진 버전은 8.5.12, 8.4.27, 8.3.36, 8.2.35입니다. 그보다 낮은 버전은 전부 해당됩니다. 8.1 이하는 PHP 프로젝트가 더 이상 정규 릴리스를 내지 않습니다. 대신 보안팀이 7.4, 8.0, 8.1용으로 최소한의 소스 백포트를 따로 공개해 뒀고, 배포판이나 LTS 벤더 중에도 백포트를 내는 곳이 있다고 합니다. 직접 빌드하거나 벤더 패키지를 쓰는 게 아니면 사실상 버전을 올리는 수밖에 없어 보입니다. 공지에도 설정을 바꾸는 건 부분적인 완화일 뿐이고...

AI는 정말 중립적일까? - Anthropic과 autism 진단 AI가 보여준 것

렌즈 연마 작업대 위에 서로 다른 곡률로 깎인 유리 렌즈 두 개가 놓여 있고, 같은 창에서 들어온 빛이 한쪽에서는 한 점으로 좁게 모이고 다른 쪽에서는 넓게 퍼진다

같은 시기에 나온 뉴스 네 개를 나란히 보게 됐습니다.

하나는 AI가 전쟁의 판도를 바꾸고 있다는 이야기였습니다. 공습 과정에서 사람이 하는 일이 어느 쪽 버튼을 누르느냐 정도로 줄었다는 대목이 있었고, AI가 청소년의 자살이나 범죄를 돕는 사례가 늘어서 미국에서 소송이 진행 중이라는 얘기도 붙어 있었습니다. 그 끝에 우리 정부가 인공지능 윤리 원칙을 새로 내놨다는 소식이 나왔습니다.

나머지 셋은 전부 자폐 스펙트럼 이야기였습니다. 뇌 영상에서 자폐와 관련 있는 부위를 찾는 기술, 영유아가 영상을 보는 동안의 반응을 AI가 읽어서 일찍 선별하는 기술, 그리고 말수가 적은 자폐 아동과 부모 사이의 대화를 AI가 이어 주는 시스템이었습니다.

마지막 뉴스에 어머니 인터뷰가 하나 실려 있었습니다.

"저한테 엄마라고 호명을 안 했거든요. 근데 이렇게 보면서 아 엄마구나, 그리고는 저한테 엄마 아빠 이렇게."

같은 기술이 한쪽에서는 사람을 죽이는 판단에 들어가 있고, 다른 쪽에서는 아이가 처음으로 엄마를 부르게 하고 있습니다. 이런 걸 보면 보통 나오는 말이 있습니다. 기술 자체에는 선악이 없고, 쓰는 사람과 기관과 국가가 방향을 정한다는 말입니다.

저도 오래 그렇게 생각했습니다. 그런데 네 개를 같이 놓고 며칠 보다 보니 그 말이 편한 쪽으로 반쯤 잘려 있는 것 같다는 생각이 들었습니다.

크란츠버그의 문장은 뒤쪽이 본론입니다

기술사학자 멜빈 크란츠버그가 남긴 문장이 있습니다. 기술 얘기가 나오면 거의 관용구처럼 쓰입니다.

"기술은 선하지도 악하지도 않다. 그러나 중립적이지도 않다."

그런데 인용될 때는 대개 앞쪽 절반만 나옵니다. 선하지도 악하지도 않다는 말은 듣기 좋고, 논쟁을 거기서 끝내 주고, 무엇보다 말하는 사람을 편하게 해 줍니다. 크란츠버그가 하고 싶었던 말은 뒤쪽이었던 것 같습니다. 선악이 없다는 것과 중립이라는 것은 다른 말이라는 거죠.

그가 붙인 설명은 이렇습니다. 기술이 사회와 맞물리면 원래 의도했던 목적을 훨씬 넘어서는 결과가 환경에도 사회에도 사람에게도 생긴다는 겁니다. 망치는 못을 박으라고 만들었는데, 망치가 흔해진 세상은 못으로 짜 맞추는 세상이 됩니다. 아무도 그렇게 하자고 정한 적이 없는데 그렇게 됩니다.

그러니까 "쓰는 사람에 따라 달라진다"는 말이 틀렸다기보다는 범위가 좁은 것 같습니다. 쓰는 사람이 고를 수 있는 선택지가 몇 개인지, 그 선택지가 어떤 모양인지는 쓰는 사람이 정하지 않습니다. 그건 훨씬 앞에서 정해집니다.

그리고 쓰는 사람이라고 하면 보통 군대나 기업이나 정부 같은 큰 주체를 떠올리는데, 실제로 기술을 손에 쥐는 사람은 그보다 훨씬 작은 경우가 많습니다. 어린이집 원장 선생님이거나, 앱을 깐 부모이거나, 화면 앞에 앉은 담당자 한 명입니다. 이 사람들한테 "기술은 쓰는 사람에 따라 달라진다"는 말은 좀 가혹하게 들릴 수도 있겠다는 생각이 듭니다. 고를 수 있는 게 별로 없는 사람한테 결과의 책임을 다 넘기는 말이 되니까요.

중립이라면 싸울 일이 없었을 겁니다

올해 초 미국에서 있었던 일입니다. Anthropic은 작년 여름에 국방부와 2억 달러 규모의 계약을 맺었고, 모델이 Palantir를 거쳐 기밀 등급의 군사·정보 업무에 쓰이고 있었습니다.

2월 말에 국방장관이 최후통첩을 보냅니다. "모든 적법한 목적"에 모델을 제한 없이 쓸 수 있게 하라는 요구였습니다. Anthropic이 원한 건 하나였습니다. 완전 자율무기와 국내 대규모 감시에는 쓰지 않는다는 조건을 계약에 남기는 것이었습니다.

회사는 물러서지 않았습니다. 대통령이 연방기관에 제품 사용 중단을 지시했고, 국방부는 Anthropic을 국가안보 공급망 위험으로 지정했습니다. 미국 기업이 이 지정을 받은 건 처음이었다고 합니다. 보안 사고가 있었던 것도 아니고, "어떤 적법한 용도로든" 쓸 수 있게 하라는 계약 조항 하나를 거부했다는 이유였습니다. 그 뒤로 법원이 이 조치를 막는 결정을 몇 번 냈습니다.

뉴스로만 보면 기업이 윤리를 지켰다는 이야기로 읽힙니다. 저는 다른 데가 걸렸습니다. 기술이 정말 중립이라면 이 다툼은 애초에 일어날 이유가 없었을 것 같습니다.

중립이라면 판단은 전부 쓰는 순간에 있어야 합니다. 그러면 Anthropic은 모델을 넘기고 나서 "우리는 이런 용도에 반대한다"고 성명만 내면 됩니다. 모델 쪽에는 뺄 것도 넣을 것도 없으니까요. 국방부도 계약서 문구 하나 때문에 최후통첩까지 보낼 이유가 없습니다. 어차피 쓰는 쪽이 정한다면 그 문구는 장식일 뿐입니다.

양쪽 다 그렇게 하지 않았습니다. 한쪽은 제한 하나를 남기려고 미국 정부 전체와의 거래를 걸었고, 다른 쪽은 그 제한을 떼려고 전례 없는 지정까지 꺼냈습니다. 둘 다 제한이 모델 안에 들어가 있느냐 아니냐가 결과를 바꾼다고 믿고 행동한 겁니다. 저한테는 기술 중립성을 두고 하는 어떤 철학적 논증보다 이 행동이 더 설득력 있게 느껴졌습니다. 말로 한 게 아니라 큰 계약과 조달 자격을 걸고 한 행동이니까요.

여기서 정해지는 건 문서보다는 배포되는 물건의 모양인 것 같습니다. 어떤 용도를 거부하도록 만든 모델과 그렇지 않은 모델은 같은 가중치에서 출발했어도 다른 물건입니다. 그 차이를 쓰는 사람이 만들지는 않습니다. 쓰는 사람한테는 이미 만들어진 것이 도착합니다.

조금 이상하다고 느낀 건 누가 제한을 원했느냐였습니다. AI 안전 표준기구 이야기를 쓰면서 비슷한 구조를 한 번 다룬 적이 있습니다. 그때는 검사 결과를 검사받는 쪽이 직접 쓸 수 있으면 그건 검문소가 아니라 서류 확인이라는 얘기를 했습니다. 이번 건은 방향이 반대입니다. 검사받는 쪽이 스스로 제한을 남기겠다고 했더니, 제한을 요구할 거라고 생각했던 쪽이 그걸 떼라고 했습니다.

만약 계약이 반대로 끝났다면 어땠을까 하는 생각을 해 봤습니다. Anthropic이 조건을 포기하고 국방부가 그 모델을 그대로 받아 갔다면, 그다음에 모델을 쓰는 사람 한 명 한 명은 무엇을 고를 수 있었을까요. 아마 고를 게 별로 없었을 것 같습니다. 화면에 뜬 결과를 승인할지 말지 정도였겠죠. 첫 번째 뉴스에서 사람이 하는 일이 버튼 수준으로 줄었다고 한 것도 결국 이런 얘기였던 것 같습니다. 버튼을 누르는 사람은 분명히 있는데, 그 사람이 누를 수 있는 버튼이 몇 개인지는 그 사람이 정하지 않았습니다.

좋은 목적으로 만든 것 안에도

무기 이야기는 쉬운 예입니다. 거기에 판단이 들어간다는 건 다들 압니다. 제가 더 궁금했던 건 반대쪽이었습니다. 아무도 의심하지 않는 좋은 목적의 기술 안에서도 같은 일이 일어나는지요.

자폐 진단 AI가 그런 경우로 보였습니다. 나쁜 의도가 들어갈 구석이 잘 보이지 않습니다. 진단이 빨라지면 개입도 빨라지고, 그만큼 아이의 발달에 도움이 된다고들 합니다. 진단까지 몇 년씩 걸리는 경우가 많았다고 하니 그 시간을 줄이는 일에 반대할 이유를 찾기가 어렵습니다.

한국전자통신연구원이 분당서울대병원 정신건강의학과 연구팀과 함께 만든 기술이 그렇습니다. 영유아 데이터 수천 건을 바탕으로, 아이에게 사회적 상호작용을 끌어내는 콘텐츠를 보여 주고 몇 분짜리 영상으로 반응을 분석합니다. 어린이집이나 발달센터, 나아가 가정에서도 쓸 수 있게 만들었다고 합니다.

AI가 무엇을 읽는지도 공개돼 있습니다. 흥미 대상을 보여 줬을 때의 반응, 이름을 불렀을 때의 반응, 모방 행동, 가리키기, 눈 맞춤입니다.

이 목록을 다시 보면 좀 이상한 데가 있습니다. 기술 명세처럼 생겼는데, 실은 무엇을 사회성으로 셀 것인지에 대한 결정입니다.

눈 맞춤을 지표에 넣는 순간 눈을 맞추지 않는 건 부족한 것으로 기록됩니다. 그런데 자폐 당사자들이 오래 해 온 이야기가 있습니다. 눈을 피하는 게 사회성이 없어서가 아니라 한꺼번에 들어오는 감각을 줄이는 방법일 수 있다는 겁니다. 상대의 눈을 보면서 말을 듣는 게 어떤 사람한테는 두 가지 일을 동시에 하는 것이고, 그래서 시선을 떼는 쪽이 오히려 대화에 집중하는 방법이라는 얘기입니다.

어느 쪽이 맞는지는 저도 모르겠습니다. 다만 어느 쪽이 맞든 그 판단은 이미 끝난 채로 어린이집에 도착합니다.

카메라를 설치하는 원장 선생님은 눈 맞춤을 지표로 쓸지 말지 고르지 않습니다. 부모도 고르지 않습니다. 그 결정은 데이터에 라벨을 달고 지표를 고르던 때 내려졌고, 배포된 다음에는 그냥 결과로 보입니다. 의료진은 그 결과를 참고 자료로 받습니다. 어디에도 악의는 없는데 결정은 분명히 들어가 있습니다.

영상 앞에 앉은 아이 쪽에서 보면 더 그렇습니다. 아이는 자기가 무엇으로 평가받는지 모릅니다. 화면에 재미있는 게 나와서 보고 있을 뿐인데, 그 몇 분 동안 눈이 어디를 향했는지가 숫자가 됩니다. 어른이라면 "저는 눈을 보면 말이 잘 안 들려서요"라고 한마디 할 수 있겠지만, 이 검사를 받는 나이의 아이한테는 그 한마디를 할 방법이 없습니다.

정확도 98%는 무엇에 대한 98%인가

몇 년 사이 자폐 선별 검사가 쏟아져 나왔습니다. 짧은 영상을 보여 주고 반응을 분석하는 방식, 손에 센서를 달아 동작을 추적하는 방식, 상호작용 검사가 어려운 영유아를 위해 뇌 영상을 보는 방식이 있습니다. 홍보 문구도 다 비슷합니다. 15분 만에 진단한다, 정확도가 98%다.

이 검사들이 공통으로 쓰는 방법은 기존 자폐 아동의 사례와 비교하는 겁니다.

여기서 한 바퀴 도는 게 보입니다. 기존 사례는 기존 진단 기준으로 모은 것입니다. 그러니 정확도 98%는 기존 진단 기준과 98% 일치한다는 뜻이 됩니다. 기준이 뭔가를 놓치고 있다면 이 시스템은 그걸 정확하게 놓칩니다. 더 빠르고 더 일관되게 놓칩니다. 기준이 여자아이의 자폐를 덜 잡아내는 쪽으로 기울어 있다면 그걸로 배운 모델도 같은 쪽으로 기울고, 그 기울기가 어린이집 수천 곳에 한꺼번에 깔립니다.

개발하는 사람 입장에서는 이 숫자가 테스트가 전부 통과했다는 말과 비슷하게 들립니다. 통과한 건 맞는데 테스트가 처음부터 엉뚱한 걸 확인하고 있었다면 그 통과는 아무것도 말해 주지 않습니다. 98%라고 하면 거의 다 맞힌다는 느낌이 드는데, 기준에서 처음부터 빠져 있던 아이들은 나머지 2%에도 들어가 있지 않을 겁니다. 틀린 것으로 세어지지도 않으니까요. 숫자가 높을수록 그 숫자가 뭘 재고 있는지를 한 번 더 보게 되는 건 그래서인 것 같습니다.

이 문제를 제일 날카롭게 말한 사람이 이 분야 안에 있다는 게 저는 좀 놀라웠습니다. 뉴스에 나온 전문가 발언입니다.

"지금 현재는 증상을 가지고, 증상 증후의 특성만 가지고 진단하게 되어 있어요. 이 진단은 사실은 원인, 치료, 예후를 예측하는 데는 도움이 안 돼요."

기술을 비판하는 말이 아니라 지금 진단 체계에 대한 말입니다. 빨라지고 정확해진 건 맞는데, 그 정확도가 겨누고 있는 과녁이 원래 원했던 게 아닐 수도 있다는 얘기로 들렸습니다.

서울대병원 소아청소년정신과 김붕년 교수팀과 KIST 뇌과학연구소, 멜버른대 연구팀이 올해 발표한 연구가 이 문제를 정면으로 건드립니다. 이 팀이 만든 건 더 정확한 진단기가 아니었습니다. fMRI에서 AI가 배운 정보가 실제 뇌의 생물학적·구조적 특성을 얼마나 반영하는지 검증하는 틀이었습니다. 감각 정보를 통합하는 하두정소엽과 감각을 중계하는 시상을 중심으로 연결이 줄어든 것을 확인했고, 사람마다 증상이 크게 다른 만큼 증상별로 뇌의 연결이 어떻게 다른지를 더 볼 계획이라고 합니다.

정확도를 올리는 대신 정확도가 무슨 뜻인지를 물은 겁니다. 저는 이 이야기에서 이 선택이 제일 중요해 보였습니다. 같은 데이터, 같은 fMRI, 같은 AI 기법을 가지고도 두 팀이 전혀 다른 물건을 만들 수 있습니다. 한쪽은 판별 성능을 올리고, 다른 쪽은 그 성능이 뭘 재고 있는지를 검사합니다. 둘 다 정당한 연구이고 둘 다 선의에서 시작했습니다. 그런데 세상에 나가서 하는 일은 전혀 다릅니다.

그 차이를 만든 건 쓰는 쪽의 도덕성이 아니라, 연구를 설계할 때 무엇을 목표로 잡느냐였습니다.

유병률이 재는 도구를 따라갈 때

조금 더 들어가면 더 불편한 게 나옵니다.

미국 질병통제예방센터가 작년에 낸 자료를 보면 8세 아동 31명 중 1명이 자폐 스펙트럼으로 확인됐고, 직전 조사보다 늘었습니다. 숫자만 보면 자폐가 빠르게 늘고 있는 것처럼 보입니다.

그런데 보고서를 쓴 사람들이 든 이유는 자폐 자체가 늘었다는 게 아니었습니다. 자폐에 대한 이해가 나아졌고 선별 검사가 늘었다는 것이었습니다.

이 말을 반대쪽에서 보면, 유병률이라는 숫자에는 그 사회가 얼마나 촘촘하게 재고 있는지가 같이 들어 있다는 얘기가 됩니다. 재는 도구를 바꾸면 숫자가 바뀝니다. 아이들은 그대로인데 숫자가 바뀝니다.

여기에 AI 선별 기술을 넣어 보면 이렇습니다. 짧은 영상 한 편이면 되고, 특별한 장비가 필요 없고, 어린이집과 보육시설과 발달센터에서 쓸 수 있습니다. 좋은 일입니다. 진단까지 몇 년씩 걸리던 아이들이 훨씬 빨리 도움을 받을 수 있습니다.

그런데 같이 일어나는 일이 있습니다. 경계선에 있던 아이들이 한꺼번에 경계 안쪽으로 들어옵니다. 이건 부작용이라기보다 기술이 하라고 만든 일 그 자체입니다. 촘촘하게 재라고 만든 도구니까요.

그러면 경계 안쪽으로 들어온 아이한테 무엇이 준비돼 있는지가 궁금해집니다. 지원이 준비돼 있다면 일찍 찾아내는 건 좋은 일입니다. 준비된 게 진단명뿐이라면 아이는 도움 없이 이름표만 얻습니다. 한국의 발달 지원 인프라가 늘어나는 수요를 감당할 수 있을지는 기술 쪽에서 답할 수 있는 문제가 아닙니다.

그런데도 그 수요가 얼마나 될지는 기술이 정합니다. 어느 원장 선생님도, 어느 부모도, 어느 정책 담당자도 우리 사회의 자폐 판정 범위를 이만큼 넓히자고 정한 적이 없는데 그렇게 됩니다. 크란츠버그가 말한 뒤쪽 절반이 이런 것 같습니다. 원래 의도했던 목적을 훨씬 넘어서는 결과요.

부모 쪽에서 생각해 보면 더 복잡해 보입니다. 만약 어린이집에서 영상 검사를 했는데 경계선이라는 결과가 나왔다면, 그 결과지는 금방 오는데 그다음에 무엇을 해야 하는지는 그만큼 빨리 오지 않을 수도 있습니다. 기술이 빨라졌다고 기다리는 시간이 없어지는 게 아니라, 결과지를 받기 전에 기다리던 시간이 결과지를 받은 뒤로 밀리는 건 아닐까 하는 생각이 들었습니다. 결과지를 받기 전의 기다림과 받은 뒤의 기다림은 아마 같은 무게가 아닐 겁니다. 받은 뒤의 기다림에는 아이 이름 옆에 단어가 하나 더 붙어 있으니까요.

키오스크가 고용을 줄인 대신 남은 사람의 근로시간을 늘린 이야기를 쓴 적이 있는데 구조가 비슷했습니다. 주문 받는 일을 기계가 대신했더니 줄어든 건 사람 수였고, 늘어난 건 남은 사람이 처리해야 하는 예외 상황이었습니다. 아무도 그걸 목표로 삼지 않았습니다.

같은 기술로 다른 물건을 만든 팀

그래서 마지막 뉴스를 다시 봤습니다.

KAIST 산업디자인학과 홍화정 교수팀이 네이버 AI Lab, 도담김 아동발달센터와 함께 만든 AACessTalk입니다. 말수가 적은 자폐 아동과 부모 사이의 대화를 돕는 시스템이고, ACM CHI 2025에서 최우수논문상을 받았습니다.

작동 방식은 이렇습니다. AI가 두 사람의 대화를 실시간으로 분석해서 아이에게는 맥락에 맞는 어휘 카드를 추천하고, 부모에게는 대화를 이어 갈 가이드를 줍니다. 기존 보완대체의사소통 도구가 고정된 카드 묶음을 쓰던 것과 달리 아이의 기분과 상황에 따라 카드가 계속 바뀝니다. 그래서 새 단어를 만날 기회가 생기고 어휘가 늘어난다고 합니다.

여기까지는 성능 이야기입니다. 제가 눈여겨본 건 버튼 두 개였습니다. 아이가 먼저 물어볼 수 있는 버튼과, 대화를 시작하고 끝내는 버튼입니다.

보완대체의사소통 도구의 흔한 구조에서 아이는 대답하는 쪽에 있습니다. 어른이 묻고 아이가 카드를 눌러 답합니다. 대화를 언제 시작하고 언제 끝낼지, 무슨 얘기를 할지는 전부 어른이 정합니다. 성능만 올리려고 했다면 이 구조를 건드릴 이유가 없었을 겁니다. 아이가 대화를 마음대로 끝낼 수 있으면 데이터를 모으기도 어려워지고 평가 지표도 나빠질 테니까요.

그런데 이 팀은 그 버튼을 넣었습니다. 아이를 측정 대상이 아니라 대화하는 사람으로 둔 겁니다.

이건 쓰는 단계에서 고를 수 있는 게 아닙니다. 어린이집에서 앱을 깔면서 "우리는 아이에게 주도권을 주는 쪽으로 쓰겠다"고 정할 수 있는 성질의 것이 아닙니다. 버튼이 없으면 없고 있으면 있습니다. 만들 때 이미 끝난 문제입니다.

같은 팀이 같은 기술로 다른 목표를 잡았다면 전혀 다른 물건이 나왔을 겁니다. 이를테면 아이가 말을 시도한 횟수를 자동으로 세서 부모에게 주간 리포트를 보내 주는 시스템 같은 것입니다. 나쁜 제품은 아닙니다. 부모가 원할 만한 기능이고 효과를 확인하는 데도 쓸모가 있습니다. 다만 그 제품 안에서 아이는 다시 측정 대상이 됩니다.

아이가 먼저 물어보는 버튼도 비슷하게 생각해 볼 수 있을 것 같습니다. 어른이 던지는 질문은 대개 어른이 알고 싶은 것입니다. 오늘 뭐 먹었어, 이게 뭐야, 이거 누구야 같은 것들이요. 질문하는 쪽이 늘 어른이면 아이 입장에서는 대화가 계속 문제를 푸는 시간처럼 느껴질 수도 있겠다 싶습니다. 아이가 먼저 물을 수 있으면 대화가 아이가 궁금한 쪽으로 갈 기회가 생깁니다. 그게 어휘가 느는 데 얼마나 도움이 되는지는 제가 알 수 없지만, 적어도 대화가 시험처럼만 느껴지지는 않을 것 같습니다.

대화를 끝내는 버튼을 아이가 실제로 누르는 장면을 상상해 보면 좀 묘합니다. 어른 쪽에서는 이제 막 대화가 붙기 시작했는데 아이가 끝을 눌러 버리는 경우도 있을 겁니다. 리포트를 보내는 제품이었다면 그건 중간에 끊긴 세션으로 기록됐을지도 모릅니다. 이 시스템에서는 아이가 그만하고 싶다고 말한 것이 됩니다. 같은 행동이 어느 물건 안에 있느냐에 따라 실패도 되고 의사 표현도 되는데, 그걸 정한 건 아이도 부모도 아니고 만든 사람이었습니다.

어머니가 인터뷰에서 한 말이 정확도가 높아졌다는 얘기가 아니라 아이와 처음으로 진짜 대화를 나눴다는 얘기였던 것도 우연은 아닌 것 같습니다. 무엇을 만들지 정할 때 이미 그쪽으로 정해져 있었던 거겠죠.

모지스의 다리

이런 얘기를 하다 보면 자주 나오는 사례가 있습니다. 랭던 위너가 1980년에 쓴 「인공물은 정치를 갖는가」에 나오는 로버트 모지스의 다리입니다. 뉴욕 도시계획을 수십 년 동안 주도한 모지스가 롱아일랜드의 고가도로를 일부러 낮게 지어서 버스가 못 지나가게 했고, 그래서 버스를 타야 했던 저소득층과 흑인들이 존스비치에 갈 수 없었다는 이야기입니다. 콘크리트로 만든 인종 필터라고들 했습니다.

지금도 여기저기 인용되는 사례인데, 1999년에 사회학자 베른바르트 요르게스가 사실관계를 따져 보니 맞지 않았다고 합니다. 버스가 다닐 수 있는 다른 길이 있었고, 그 도로는 원래 상업용 차량을 못 다니게 하는 종류의 도로였다는 겁니다. 연구에서 나온 얘기처럼 퍼졌지만 실은 경건한 우화에 가까웠다는 지적이었습니다.

그래서 저는 위너만큼 세게 말하지는 못하겠습니다. 다리 높이가 인종을 겨냥해 정해졌는지는 모르겠습니다. 그래도 일단 지어지고 나면 버스는 못 지나갑니다. 의도가 무엇이었든 고를 수 있는 길은 줄어들고, 그걸 되돌리려면 다리를 다시 놓아야 합니다.

자폐 진단 AI의 눈 맞춤 지표도 비슷하게 보입니다. 눈 맞춤은 임상에서 오래 쓰여 온 기준이고, 실제로 의미 있는 지표이기도 합니다. 저는 이런 기준을 보면 빼야 한다는 생각보다 그게 왜 거기 들어갔을까가 먼저 궁금해집니다. 아마 그 기준을 처음 쓴 사람들은 아주 많은 아이를 직접 보면서 그게 의미가 있다고 판단했을 겁니다. 오래 남아 있는 기준에는 대개 그만한 이유가 있습니다.

걸리는 건 그 이유가 모델 안으로는 따라 들어가지 않는다는 점입니다. 사람이 기준을 쓸 때는 이 아이는 눈은 피하지만 다른 방식으로는 반응을 잘한다는 식으로 감안할 여지가 있습니다. 기준이 학습 데이터가 되고 나면 이유는 빠지고 가중치만 남습니다. 이유가 남아 있어야 나중에 누가 그 기준을 다시 들여다볼 수 있을 텐데, 배포된 모델은 왜 그렇게 판단했는지를 말해 주지 않습니다. 일단 그 기준으로 학습이 끝나고 배포까지 되면, 현장에서 그 기준을 바꿀 방법은 없습니다. 다리를 다시 놓는 것처럼 처음부터 다시 만들어야 합니다.

늦게 오는 규제

데이비드 콜링리지가 1980년에 정리한 딜레마가 있습니다. 기술을 통제하려고 하면 늘 두 가지가 서로 어긋난다는 겁니다. 기술이 초기일 때는 바꾸기 쉽지만 어떤 결과가 나올지 모릅니다. 결과가 분명해질 때쯤에는 이미 사회와 경제 깊숙이 들어가 있어서 바꾸기 어렵습니다. 아는 때와 바꿀 수 있는 때가 다릅니다.

한국은 올해 1월 인공지능 기본법을 전면 시행했습니다. 분야별 규제가 아니라 포괄적인 법률로 AI를 다루는 법을 전면 시행한 건 한국이 가장 빨랐다고 합니다. 생성형 AI 결과물에 워터마크를 붙이게 했고, 의료·채용·대출 심사처럼 생명이나 기본권에 큰 영향을 주는 고영향 AI 사업자에게는 위험 관리와 이용자 보호 방안을 만들게 했습니다.

그리고 8월에 「대한민국 인공지능 윤리원칙」이 의결됐습니다. 인간의 존엄성, 사회의 공공선, 인류의 지속가능성을 가치로 걸었고 그 아래 원칙이 일곱 개 있습니다. 법적 구속력은 없는 자율 규범이고, 기업이 스스로 이행 수준을 점검할 수 있는 자율 점검표를 배포할 계획이라고 합니다.

이번에 달라진 점으로 언급된 게 하나 있었습니다. 6년 전 처음 윤리 기준을 만들 때와 달리 AI가 이미 생활 속에 널리 들어와 있다는 것입니다.

저는 이 문장이 성과 보고보다는 자백에 가깝게 읽혔습니다. 콜링리지가 말한 두 번째 경우에 들어왔다는 뜻이니까요. 무엇이 문제인지 이제는 알겠는데, 알게 됐을 때는 이미 빼기 어려워졌습니다. 하네스에서 가드레일을 넣는 일보다 빼는 일이 훨씬 어렵다는 글을 쓴 적이 있는데, 그건 개인 도구 수준의 얘기였고 사회 전체에서는 훨씬 심할 것 같습니다.

자폐 진단 AI는 그나마 덜 늦은 쪽으로 보입니다. 기술이 더 안전해서가 아니라 의료라는 분야에 이미 규제 틀이 있었기 때문인 것 같습니다. 임상시험을 거쳐야 하고, 의료기기 허가를 받아야 하고, 진단 결과의 책임이 누구에게 있는지가 정해져 있고, 학회에서 검증을 받아야 합니다. KIST와 서울대병원 팀이 정확도 대신 생물학적 타당성을 검증하는 틀을 만든 것도 이런 문화에서 나온 선택으로 보입니다. 의료에는 잘 맞히는 것과 맞는 이유로 맞히는 것을 구분해야 한다는 규범이 오래 있었으니까요.

챗봇이 청소년과 나누는 대화에는 그런 틀이 없었습니다. 그래서 소송이 먼저 오고 규범이 나중에 왔습니다.

가정을 하나 해 보면, 만약 자폐 선별 AI가 의료기기가 아니라 육아 앱으로 먼저 나왔다면 어땠을까 싶습니다. 앱 마켓에 올라가서 부모가 집에서 아이를 찍어 올리면 몇 분 뒤 결과가 나오는 식이었다면요. 기술은 똑같은데 그걸 검증하는 사람도, 결과에 책임지는 사람도 없었을 것 같습니다. 정확도 98%라는 문구만 남고, 그 98%가 무엇과 일치한다는 뜻인지는 아무도 묻지 않았을 수도 있습니다. 같은 기술이 어느 분야를 거쳐 세상에 나오느냐에 따라 붙잡히기도 하고 안 붙잡히기도 한다는 게, 저한테는 이 글을 쓰면서 제일 의외였던 부분입니다.

이걸 보면 콜링리지 딜레마가 좀 덜해지는 건 규범이 기술보다 먼저 있던 분야뿐인 것 같습니다. 새 기술을 위해 새 규범을 만드는 일은 거의 늘 늦습니다. 그 기술이 들어가는 분야에 이미 규범이 있으면 그 규범이 기술을 붙잡습니다. AI 윤리 원칙 하나로 모든 분야를 덮기 어려운 것도 그래서가 아닐까 싶습니다. 붙잡는 힘은 일반 원칙이 아니라 그 분야가 오래 쌓아 온 실무에서 나오는 것 같습니다.

망분리 20년 동안 법이 요구한 적 없는 목록이 관행으로 굳어 있던 이야기를 쓰면서도 비슷한 걸 봤습니다. 실제로 사람들의 행동을 바꾼 건 법 조문이 아니라 현장에 쌓인 목록이었습니다.

자율 점검표

윤리 원칙과 같이 나온 자율 점검표에는 솔직히 기대가 크지 않습니다.

저는 제 블로그 자동화 도구에 감시 훅을 열두 개 걸어 두고 넉 달을 돌렸는데 한 번도 발화하지 않았습니다. 처음에는 문제가 없어서 조용한 줄 알았는데 그게 아니었습니다. 검사하는 쪽과 검사받는 쪽이 같으면 통과하기 쉬운 항목만 남습니다. 일부러 느슨하게 만든 것도 아니었습니다. 스스로 점검할 항목을 고르다 보면 자기가 통과할 수 있는 걸 고르게 되는 것 같습니다.

법적 구속력이 없는 자율 규범도 구조가 같아 보입니다. 기업이 스스로 항목을 대조하고 스스로 이행 수준을 적습니다. 그 결과를 따로 확인하는 바깥 기관이 없으면, 점검표는 무엇이 문제인지 알려 주는 문서가 아니라 무엇을 이미 하고 있는지 정리하는 문서가 될 것 같습니다.

이번 개정에서 설계한 사람의 책임을 강조했고, 실질적인 피해 구제를 해야 한다는 문구가 들어간 건 맞는 방향으로 보입니다. 책임의 무게를 쓰는 단계가 아니라 만드는 단계에 실었다는 점에서 특히 그렇습니다.

다만 원칙이 실제로 힘을 가지려면 분야마다 실무 규범으로 바뀌어야 할 것 같습니다. "공정성·포용성"이라는 단어가 자폐 선별 AI 앞에 놓였을 때 실제로 무엇을 요구하는지가 정해져야 합니다. 여자아이 데이터가 충분히 들어갔는지를 묻는 건지, 눈 맞춤 지표가 타당한지 당사자 단체에 검토를 받으라는 건지, 경계선 판정을 받은 아이에게 다음 지원이 연결되는지를 확인하라는 건지요. 그게 정해지지 않으면 원칙은 읽기 좋은 문장으로 남을 것 같습니다.

만약 제가 그 점검표를 받아서 채우는 쪽이라면 어떻게 했을까 생각해 봤습니다. 아마 공정성을 고려했느냐는 항목에는 예라고 썼을 겁니다. 고려는 했으니까요. 그 항목이 눈 맞춤 얘기까지 내려오지 않는 한 다른 답을 쓸 이유가 없습니다. 거짓말을 한 사람은 아무도 없는데 점검표는 다 채워지고, 대화를 끝내는 버튼이 누구 손에 있는지는 어디에도 적히지 않습니다.

요즘은 AI 소식을 보면 누가 쓰느냐보다 그 앞에서 무엇을 정했는지를 먼저 찾아보게 됩니다. 무엇을 재기로 했는지, 대화를 끝내는 버튼이 아이에게 있는지 어른에게 있는지, 모델에 용도 제한이 남아 있는지 같은 것들입니다. 이 기술이 선한가를 묻는 것보다 답이 훨씬 구체적으로 나오고, 기술 문서에 공개돼 있는 경우도 많아서 마음만 먹으면 볼 수 있습니다.

댓글

이 블로그의 인기 게시물

봉제인형 사진 한 장, ChatGPT와 Gemini의 다른 대답

AI 부업으로 3개월에 2달러 벌고 50달러를 썼다는 증언을 봤습니다. 그 위에 광고가 네 겹입니다

구글은 서울에서 모델이 아니라 에이전트를 판다