Jump to content

talk (software)

From Wikipedia, the free encyclopedia


talk
Operating systemUnix,Unix-like,V
PlatformCross-platform

talkis aUnixtext chatprogram, originally allowing messaging only between the users logged on to one multi-usercomputer—but later extended to allow chat to users on other systems.

Although largely superseded byIRCand other modern systems, it is still included with mostUnix-likesystems today, includingLinux,[1]BSDsystems[2]andmacOS.[3]

History[edit]

Similar facilities existed on earlier system such asMultics,CTSS,PLATO,andNLS.[4]Early versions of talk[when?]did not separate text from each user. Thus, if each user were to type simultaneously, characters from each user were intermingled. Since slowteleprinterkeyboards were used at the time (11 characters per second maximum[citation needed]), users often could not wait for each other to finish. It was common etiquette for a long typing user to stop when intermingling occurred to see the listener's interrupting response. This is much the same as interrupting a long monologue when speaking in person. More modern versions usecursesto break the terminal into multiple zones for each user, thus avoiding intermingling text.

In 1983, a new version of talk was introduced as a Unix command with4.2BSD,and would also accommodate electronic conversations between users on different machines. Follow-ons to talk includedntalk,Britt Yenne'sytalk[5]and Roger Espel Llima'sutalk.[6]ytalk was the first of these to allow conversations between more than two users, and was written in part to allow communication between users on computers with differentendianness.utalk uses a special protocol overUDP(instead ofTCPused by the rest) that is more efficient and allows edition of the entire screen. All of these programs split the interface into different sections for each participant. The interfaces did not convey the order in which statements typed by different participants would be reassembled into a log of the conversation. Also, all three programs arereal-time text,where they transmit each character as it was typed. This leads to a more immediate feel to the discussion than recentinstant messagingclients orIRC.Users more familiar with other forms of instant text communication would sometimes find themselves in embarrassing situations by typing something and deciding to withdraw the statement, unaware that other participants of the conversation had seen every keystroke happen in real time.

A similar program exists onVMSsystems calledphone.[7]

Security[edit]

A popular program called "flash", which sent malformed information via the talk protocol, was frequently used by pranksters to corrupt the terminal output of the unlucky target in the early 1990s.[citation needed]It did this by including terminal commands in the field normally designated for providing the name of the person making the request. When the victim would receive the talk request, the name of the person sending the request would be displayed on their screen. This would cause the terminal commands to execute, rendering the person's display unreadable until they reset it. Later versions of talk blocked flash attempts and alerted the user that one had taken place. Later it became clear that, by sending different terminal commands, it is even possible to have the user execute commands. As it has proven impossible to fix all programs that output untrusted data to the terminal, modern terminal emulators have been rewritten to block this attack, though some may still be vulnerable.[8][9]

See also[edit]

References[edit]

  1. ^man talk,ubuntu.com
  2. ^man talk,freebsd.org
  3. ^man talk,apple.com
  4. ^Day, John (December 19, 2002)."[ih] Origin of 'talk' command".internet-history(Mailing list).
  5. ^"YTalk – About".ytalk.ourproject.org.
  6. ^"utalk – a UDP-based talk protocol".utalk.ourproject.org.
  7. ^Vos, Marc H.E."Marc's Place – VMS – Phone".marc.vos.net.Retrieved2016-10-19.
  8. ^"Updated vte packages fix gnome-terminal vulnerability".Red Hat Customer Portal.February 24, 2003. RHSA-2003:053-10, CVE-2003-0070, Red Hat Bugzilla 1616950. Archived fromthe originalon March 4, 2016.
  9. ^Moore, H D; Digital Defense (July 11, 2009) [February 25, 2003]."Gnome-Terminal Window Title Reporting Escape Sequence Command Execution Vulnerability".SecurityFocus.CVE-2003-0070. Archived fromthe originalon January 28, 2021.

External links[edit]