SlideShare a Scribd company logo
Anjan Mondal (Roll No. - 01)
                           Arnab Pal (Roll No. - 02)
                           M.E. (Software Engineering)
                           Dept. of Information Technology
                           Jadavpur University



Wednesday, July 25, 2012                                     1
Meaning of Agent
 ‘An agent is a computer system that is situated in some
   environment, and that is capable of autonomous action
   in this environment in order to meet its design objectives’.
 Two basic properties of Software Agents :
  Autonomicity – ability to act without direct human
   intervention.
  Situatedness – Agents tend to be used where the
   environment is challenging (dynamic, unpredictable and
   unreliable).



Wednesday, July 25, 2012                                          2
How Agent works

                             SENSORS




                           ACTUATORS




Wednesday, July 25, 2012               3
Other properties of Agent
 Reactive – senses changes in the environment
     and acts accordingly to those changes.

 Proactive – persistently pursues goals.


 Flexible – has multiple ways of achieving goals.


 Robust – recovers from failure.

Wednesday, July 25, 2012                             4
Properties of Agent contd.
 Communicative – able to communicate with
     other agents.

 Mobile – can travel from one host to another.

 Learning – adapts in accordance with previous
     experience.

 Believable – appears believable to the end-user.

Wednesday, July 25, 2012                             5
Definition of a Stationary Agent
 A stationary agent executes only on the system
     where it begins execution. If it needs information
     that is not on that system, or needs to interact
     with an agent on a different system, it typically
     uses a communication mechanism such as remote
     procedure calling (RPC).




Wednesday, July 25, 2012                                  6
What is a Mobile Agent?
 Program that can migrate from system to system
  within a network environment
 Performs some processing at each host
 Agent decides when and where to move next
 How does it move ?
       Save state
       Transport saved state to next system
       Resume execution of saved state

Wednesday, July 25, 2012                           7
Evolution
  End point in the incremental evolution of mobile
   abstractions such as mobile code, mobile objects,
   mobile processes.
     Mobile Code – transfers (code)
     Mobile Object – transfers (code + data)
     Mobile Process – transfers
         (code + data + thread state)
  Mobile Agent – transfers
          (code + data + thread + authority of its owner)

Wednesday, July 25, 2012                                    8
A Mobile Agent Dissected
 A mobile agent contains the following 3 components:
       Code - the program (in a suitable language) that
          defines the agent's behavior.

       State - the agent's internal variables etc., which enable
          it to resume its activities after moving to another host.

       Attributes - information describing the agent, its
          origin and owner, its movement history, resource
          requirements, authentication keys etc. Part of this may
          be accessible to the agent itself, but the agent must not
          be able to modify the attributes
Wednesday, July 25, 2012                                              9
Levels of Mobility
 Weak Mobility
       When moving a mobile agent carries
                           (code + data state)

       Data State - global or instance variable


       On moving, execution has to start from the
          beginning

Wednesday, July 25, 2012                             10
Levels of Mobility
 Strong Mobility
       When moving a mobile agent carries
         (code + data state + execution state)
       Data State - global or instance variable
       Execution State – local variables and threads
       On moving, execution can continue from the
        point it stopped on the previous host


Wednesday, July 25, 2012                                11
Events in Mobile Agent’s life-time
 Creation: a brand new agent is born and its state is
     initialized.
 Dispatch: an agent travels to a new host.

 Cloning: a twin agent is born and the current state of
     the original is duplicated in the clone.

 Deactivation: an agent is put to sleep and its state is
     saved in persistent storage.

 Activation: a deactivated agent is brought back to
     life and its state is restored from persistent storage.

Wednesday, July 25, 2012                                       12
Events in Mobile Agent’s life-time
 Retraction: an agent is brought back from a remote
     host along with its state to the home machine.

 Disposal: an agent is terminated and its state is lost
     forever.

 Communication: Notifies the agent to handle
     messages incoming from other agents , which is the
     primary means of inter-agent correspondence.


Wednesday, July 25, 2012                               13
Agent Life-Cycle Model
                              Context A                       Context B     Dispose

           Clone                              Dispatch
                                Agent
                               Agent                           Agent
                                              Retract

                                     Create
Agent Life Cycle                                 Deactivate               Activate
-Creation
-Cloning                Class
-Dispatching and
                         File
Retraction                                                     Disk
(Mobility) and
-Activation                                                   Storage
 Deactivation (Persistence)
-Disposal

   Wednesday, July 25, 2012                                                          14
Applets, Servlets and Mobile Agents
  Applet – Downloaded from server to client.


  Servlet – Uploaded from client to server.


  Mobile Agents – Detached from client, can have
       multiple hops.




Wednesday, July 25, 2012                        15
Mobile Code Systems: Design
 Four basic types:
      Client/Server
      Code on Demand
      Remote Evaluation
      Mobile Agents
  Elements
      Data (stored result sets)
      Code (commands)
      Program stack (current status of the program)
Wednesday, July 25, 2012                              16
Wednesday, July 25, 2012   17
Client/Server Discussion
 Examples: WWW, RPC, Webservices, CORBA, EJBs
 Elements
              data - mobile
              code - static
              program stack – static

 Advantages
      easy to implement
      widespread
 Disadvantages
      there‘s no “one size fits all“
 CORBA (Common Object Request Broker Architecture), EJB (Enterprise JavaBeans)


Wednesday, July 25, 2012                                                         18
d   e
                                    Co

                                    Ex 3.
                                      ec
                                    co ute
                                      de




                                         e
                                    C od

                                    Ex 5.
                                      ec
                                    co ute
                                      de
                           Result
Wednesday, July 25, 2012                       19
Mobile Agents Discussion
 Elements
       data - semi-mobile (necessary data is mobile)
       code - mobile
       program stack – mobile

 The       Mobile Agent paradigm can solve all
     distributed computing issues
        NO! Mobile Agents are not a substitute for client-
     server techniques. The two techniques augment each
     other and very often a combination of the two is the
     most appropriate.

Wednesday, July 25, 2012                                 20
Seven Good Reasons for Mobile Agents
 Danny Lange’s Seven Good Reasons For Mobile
     Agents
      They reduce network load
      They overcome network latency
      They encapsulate protocols
      They execute asynchronously and autonomously
      They adapt dynamically
      They are naturally heterogeneous
      They are robust and fault-tolerant
 There is still no killer app for mobile agents!
Wednesday, July 25, 2012                             21
Companies and Products
 IBM: Aglets
 Information on Aglets can be found at http://www.trl.ibm.co.jp/aglets
 FTP Software: CyberAgents
 Information on CyberAgents used to be able to be found at http://www.ftp.com/cyberagents

 General Magic: Tabriz
 More information on Tabriz can be found at http://www.genmagic.com/tabriz


 Languages:
 The following languages are being used today for authoring agents.
 Java, Telescript, TCL or Tools Control Language, Obliq, Python




Wednesday, July 25, 2012                                                                    22
Wednesday, July 25, 2012   23
Security Threats
 Threats to security generally fall into three main classes:

  Disclosure of information
  Denial of service
  Corruption of information




Wednesday, July 25, 2012                                   24
Agent System Model

               HOME
                           Agent      Agent             platform
              platform


                                              Network



                              Agent       platform




Wednesday, July 25, 2012                                           25
Malicious agents


  Malicious agencies.




Wednesday, July 25, 2012   26
Malicious Agents
   Malicious agents are those that try to attack the
   hosting agency or other agent.

   Classification malicious agents according to the
   target they attack

   Attacking the Hosting Agency.
   Attacking Other Agents


Wednesday, July 25, 2012                               27
Attacking the Hosting Agency
 1.     The most obvious example of a malicious agent is
        one that consumes resources of the hosting
        environment in an improper way.

  Recourses may be :
   Memory,
   CPU cycles,
   Network bandwidth
  Effect : The agency eventually is not able to provide its usual
        service to other agents.
Wednesday, July 25, 2012                                             28
Attacking the Hosting Agency(2)
 2. The second type of attack to the hosting agency is
     when an agent tries to gain unauthorized access to
     the agency.

  private keys of the agency or its users.
  An agent could also try to disclose the agency’s code
        or even try to terminate the agency completely


Wednesday, July 25, 2012                                  29
Attacking Other Agents
 No agent must have access to any other agent on the
  programming language level.

 If we assume object-oriented programming languages,
   no agent should ever obtain a direct reference of
   another agent. Otherwise, the malicious agent would
   gain full control of the referenced agent.




Wednesday, July 25, 2012                             30
Attacking Other Agents(2)
 A malicious agent could initiate denial of service attacks
   on other agents, for example, by sending thousands of
   spam messages.




Wednesday, July 25, 2012                                  31
Malicious Agencies
 A malicious agency is one that tries to attack mobile
  agents currently residing on it or other agencies.
  Two types of attack can occur-

           •   Passive attack.
           •   Active attack.




Wednesday, July 25, 2012                                  32
Passive attack
 passive attack "attempts to learn or make use of
  information from the system but does not
  affect system resources"

 Traffic analysis
  each message is encrypted because it is not important
     whether the data is readable(understandable) to the
     attacker. Here, the adversary attempts to find patterns in
     the communication between two agencies, which might
     allow the adversary to derive certain assumptions based
     on these patterns.
Wednesday, July 25, 2012                                          33
Passive attack
 Traffic analysis
                           Attacker




    Agency                            Agency




Wednesday, July 25, 2012                       34
Active Attack
 Active attacks include security threats in which an
     agency tries to manipulate agent code or data while it
     is transmitted between agencies. The most common
     examples of this kind of attack are alterations, in
     which an agent’s data is deleted or tampered with by
     an agency




Wednesday, July 25, 2012                                      35
Active attack
         Agency A                               Agency B


                                                    B
             A




                                   C
                           Malicious Agencies


Wednesday, July 25, 2012                                   36
Example of active attack
  An agent is sent out to find the best airfare for a flight with a
   particular route
  The agent is given various requirements, such as departure and
   destination, time restrictions.
  The agent will visit every airline and query their databases before
   committing to a purchase and reporting back to the agent owner
  A malicious host can interfere with the agent execution in several
   ways
        Erase all information previously collected by the agent .
        change the agent’s route so that airlines with more favourable offers are
         not visited.
        simply terminate the agent



Wednesday, July 25, 2012                                                             37
Example
                                                     Platform 5
                                                      Airline 4


                           Platform 2   Platform 3    Platform 4
                            Airline 1    Airline 2   Malicious host
     Agent
    Migration                                          Airline 3




Wednesday, July 25, 2012                                              38
Attacking Agents
 cut and paste attack


 This attack works even if data has been encrypted so
  that It can be read only at specific agencies.
  An agent, α, carries a data item protected with the public key of an
   agency, Ai that the agent is going to visit.
  a malicious agency, Am, which currently is hosting agent α, could cut
   the data item, paste it into a new agent, and let this agent migrate to
   Ai.
  The new agent decrypts the data item and carries it back to agency
   Am.

Wednesday, July 25, 2012                                                     39
References:
  Mobile Agents Basic Concepts, Mobility Models, and the Tracy Toolkit
     Peter Braun Swinburne University of Technology, Victoria, Australia
     Wilhelm Rossak ,Friedrich Schiller University, Jena, Thuringia,
     Germany.

  Mobile agent security Niklas Borselius Mobile VCE Research Group
     Information Security Group, Royal Holloway, University of London

  Artificial Intelligence A Modern Approach by Russell & Norvig, Second
     Edition, Prentice Hall.




Wednesday, July 25, 2012                                                   40
Thank You


Wednesday, July 25, 2012   41

More Related Content

PPT
Mobile agents
PPTX
CLIENT SERVER IN OS.ppt
PPTX
Wifi & 802.11 Standards
PPTX
Library Management System Waterfall Model
PPT
Network cable
PDF
Hub, switch, router, bridge & and repeater
PPTX
Zigbee technology ppt
Mobile agents
CLIENT SERVER IN OS.ppt
Wifi & 802.11 Standards
Library Management System Waterfall Model
Network cable
Hub, switch, router, bridge & and repeater
Zigbee technology ppt

What's hot (20)

PPTX
Mobile IP
PPT
File replication
PPTX
Simple Mail Transfer Protocol
PPTX
PPT
Gsm.....ppt
PDF
PPTX
Csc341 – Lecture 1 network management
PPT
BASIC CONCEPTS OF COMPUTER NETWORKS
PDF
Routing Protocols for Wireless Sensor Networks
PPTX
Green cloud computing
PDF
IT6601 MOBILE COMPUTING
PPT
Security in GSM(2G) and UMTS(3G) Networks
PPTX
Ip address presentation
PPT
middleware
PPTX
Introduction to Mobile Ad hoc Networks
PPTX
message passing vs shared memory
PPT
optical computers
DOC
Mobile Computing I-Unit Notes
PDF
Smart attendance system using facial recognition
PPTX
LI-FI Presentation
Mobile IP
File replication
Simple Mail Transfer Protocol
Gsm.....ppt
Csc341 – Lecture 1 network management
BASIC CONCEPTS OF COMPUTER NETWORKS
Routing Protocols for Wireless Sensor Networks
Green cloud computing
IT6601 MOBILE COMPUTING
Security in GSM(2G) and UMTS(3G) Networks
Ip address presentation
middleware
Introduction to Mobile Ad hoc Networks
message passing vs shared memory
optical computers
Mobile Computing I-Unit Notes
Smart attendance system using facial recognition
LI-FI Presentation
Ad

Similar to Mobile agent (20)

PPTX
Mobile Agents
PPTX
Mobile Agents
PPTX
PDF
Introduction to JADE (Java Agent DEvelopment) Framework
PDF
Sunrise presentation
PDF
Sunrise Presentation, Company Overview 2012
PPTX
Sl virtual apps-131106
PPTX
Software agents
PDF
Testing and TDD - KoJUG
PPTX
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User Experience
PPTX
03 requirement engineering_process
PPT
Object oriented design-UNIT V
PPTX
14 software technical_metrics
PPT
Introduction to OSLC
PPTX
Scaling identity to internet proportions
PPTX
Dom introduction-website-v1.0
PPTX
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
PPT
UML_Training.ppt
PDF
Mudassar_Yash Technologies AB_CV
PPTX
OOP_chapter _1.pptx
Mobile Agents
Mobile Agents
Introduction to JADE (Java Agent DEvelopment) Framework
Sunrise presentation
Sunrise Presentation, Company Overview 2012
Sl virtual apps-131106
Software agents
Testing and TDD - KoJUG
Nagios Conference 2012 - Nathan Vonnahme - Monitoring the User Experience
03 requirement engineering_process
Object oriented design-UNIT V
14 software technical_metrics
Introduction to OSLC
Scaling identity to internet proportions
Dom introduction-website-v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
UML_Training.ppt
Mudassar_Yash Technologies AB_CV
OOP_chapter _1.pptx
Ad

Recently uploaded (20)

PDF
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
PPTX
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Empathic Computing: Creating Shared Understanding
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Approach and Philosophy of On baking technology
PDF
Modernizing your data center with Dell and AMD
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
NewMind AI Weekly Chronicles - August'25 Week I
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
cuic standard and advanced reporting.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
NewMind AI Monthly Chronicles - July 2025
MYSQL Presentation for SQL database connectivity
Chapter 3 Spatial Domain Image Processing.pdf
Empathic Computing: Creating Shared Understanding
Mobile App Security Testing_ A Comprehensive Guide.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Diabetes mellitus diagnosis method based random forest with bat algorithm
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Advanced methodologies resolving dimensionality complications for autism neur...
Approach and Philosophy of On baking technology
Modernizing your data center with Dell and AMD
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
NewMind AI Weekly Chronicles - August'25 Week I
The AUB Centre for AI in Media Proposal.docx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
cuic standard and advanced reporting.pdf
Network Security Unit 5.pdf for BCA BBA.

Mobile agent

  • 1. Anjan Mondal (Roll No. - 01) Arnab Pal (Roll No. - 02) M.E. (Software Engineering) Dept. of Information Technology Jadavpur University Wednesday, July 25, 2012 1
  • 2. Meaning of Agent ‘An agent is a computer system that is situated in some environment, and that is capable of autonomous action in this environment in order to meet its design objectives’. Two basic properties of Software Agents :  Autonomicity – ability to act without direct human intervention.  Situatedness – Agents tend to be used where the environment is challenging (dynamic, unpredictable and unreliable). Wednesday, July 25, 2012 2
  • 3. How Agent works SENSORS ACTUATORS Wednesday, July 25, 2012 3
  • 4. Other properties of Agent Reactive – senses changes in the environment and acts accordingly to those changes. Proactive – persistently pursues goals. Flexible – has multiple ways of achieving goals. Robust – recovers from failure. Wednesday, July 25, 2012 4
  • 5. Properties of Agent contd. Communicative – able to communicate with other agents. Mobile – can travel from one host to another. Learning – adapts in accordance with previous experience. Believable – appears believable to the end-user. Wednesday, July 25, 2012 5
  • 6. Definition of a Stationary Agent A stationary agent executes only on the system where it begins execution. If it needs information that is not on that system, or needs to interact with an agent on a different system, it typically uses a communication mechanism such as remote procedure calling (RPC). Wednesday, July 25, 2012 6
  • 7. What is a Mobile Agent? Program that can migrate from system to system within a network environment Performs some processing at each host Agent decides when and where to move next How does it move ? Save state Transport saved state to next system Resume execution of saved state Wednesday, July 25, 2012 7
  • 8. Evolution  End point in the incremental evolution of mobile abstractions such as mobile code, mobile objects, mobile processes.  Mobile Code – transfers (code)  Mobile Object – transfers (code + data)  Mobile Process – transfers (code + data + thread state)  Mobile Agent – transfers (code + data + thread + authority of its owner) Wednesday, July 25, 2012 8
  • 9. A Mobile Agent Dissected A mobile agent contains the following 3 components: Code - the program (in a suitable language) that defines the agent's behavior. State - the agent's internal variables etc., which enable it to resume its activities after moving to another host. Attributes - information describing the agent, its origin and owner, its movement history, resource requirements, authentication keys etc. Part of this may be accessible to the agent itself, but the agent must not be able to modify the attributes Wednesday, July 25, 2012 9
  • 10. Levels of Mobility Weak Mobility When moving a mobile agent carries (code + data state) Data State - global or instance variable On moving, execution has to start from the beginning Wednesday, July 25, 2012 10
  • 11. Levels of Mobility Strong Mobility When moving a mobile agent carries (code + data state + execution state) Data State - global or instance variable Execution State – local variables and threads On moving, execution can continue from the point it stopped on the previous host Wednesday, July 25, 2012 11
  • 12. Events in Mobile Agent’s life-time Creation: a brand new agent is born and its state is initialized. Dispatch: an agent travels to a new host. Cloning: a twin agent is born and the current state of the original is duplicated in the clone. Deactivation: an agent is put to sleep and its state is saved in persistent storage. Activation: a deactivated agent is brought back to life and its state is restored from persistent storage. Wednesday, July 25, 2012 12
  • 13. Events in Mobile Agent’s life-time Retraction: an agent is brought back from a remote host along with its state to the home machine. Disposal: an agent is terminated and its state is lost forever. Communication: Notifies the agent to handle messages incoming from other agents , which is the primary means of inter-agent correspondence. Wednesday, July 25, 2012 13
  • 14. Agent Life-Cycle Model Context A Context B Dispose Clone Dispatch Agent Agent Agent Retract Create Agent Life Cycle Deactivate Activate -Creation -Cloning Class -Dispatching and File Retraction Disk (Mobility) and -Activation Storage Deactivation (Persistence) -Disposal Wednesday, July 25, 2012 14
  • 15. Applets, Servlets and Mobile Agents  Applet – Downloaded from server to client.  Servlet – Uploaded from client to server.  Mobile Agents – Detached from client, can have multiple hops. Wednesday, July 25, 2012 15
  • 16. Mobile Code Systems: Design Four basic types: Client/Server Code on Demand Remote Evaluation Mobile Agents  Elements Data (stored result sets) Code (commands) Program stack (current status of the program) Wednesday, July 25, 2012 16
  • 18. Client/Server Discussion Examples: WWW, RPC, Webservices, CORBA, EJBs Elements data - mobile code - static program stack – static Advantages easy to implement widespread Disadvantages there‘s no “one size fits all“ CORBA (Common Object Request Broker Architecture), EJB (Enterprise JavaBeans) Wednesday, July 25, 2012 18
  • 19. d e Co Ex 3. ec co ute de e C od Ex 5. ec co ute de Result Wednesday, July 25, 2012 19
  • 20. Mobile Agents Discussion Elements data - semi-mobile (necessary data is mobile) code - mobile program stack – mobile The Mobile Agent paradigm can solve all distributed computing issues NO! Mobile Agents are not a substitute for client- server techniques. The two techniques augment each other and very often a combination of the two is the most appropriate. Wednesday, July 25, 2012 20
  • 21. Seven Good Reasons for Mobile Agents Danny Lange’s Seven Good Reasons For Mobile Agents They reduce network load They overcome network latency They encapsulate protocols They execute asynchronously and autonomously They adapt dynamically They are naturally heterogeneous They are robust and fault-tolerant There is still no killer app for mobile agents! Wednesday, July 25, 2012 21
  • 22. Companies and Products IBM: Aglets Information on Aglets can be found at http://www.trl.ibm.co.jp/aglets FTP Software: CyberAgents Information on CyberAgents used to be able to be found at http://www.ftp.com/cyberagents General Magic: Tabriz More information on Tabriz can be found at http://www.genmagic.com/tabriz Languages: The following languages are being used today for authoring agents. Java, Telescript, TCL or Tools Control Language, Obliq, Python Wednesday, July 25, 2012 22
  • 24. Security Threats Threats to security generally fall into three main classes:  Disclosure of information  Denial of service  Corruption of information Wednesday, July 25, 2012 24
  • 25. Agent System Model HOME Agent Agent platform platform Network Agent platform Wednesday, July 25, 2012 25
  • 26. Malicious agents  Malicious agencies. Wednesday, July 25, 2012 26
  • 27. Malicious Agents Malicious agents are those that try to attack the hosting agency or other agent. Classification malicious agents according to the target they attack Attacking the Hosting Agency. Attacking Other Agents Wednesday, July 25, 2012 27
  • 28. Attacking the Hosting Agency 1. The most obvious example of a malicious agent is one that consumes resources of the hosting environment in an improper way.  Recourses may be :  Memory,  CPU cycles,  Network bandwidth  Effect : The agency eventually is not able to provide its usual service to other agents. Wednesday, July 25, 2012 28
  • 29. Attacking the Hosting Agency(2) 2. The second type of attack to the hosting agency is when an agent tries to gain unauthorized access to the agency.  private keys of the agency or its users.  An agent could also try to disclose the agency’s code or even try to terminate the agency completely Wednesday, July 25, 2012 29
  • 30. Attacking Other Agents No agent must have access to any other agent on the programming language level. If we assume object-oriented programming languages, no agent should ever obtain a direct reference of another agent. Otherwise, the malicious agent would gain full control of the referenced agent. Wednesday, July 25, 2012 30
  • 31. Attacking Other Agents(2) A malicious agent could initiate denial of service attacks on other agents, for example, by sending thousands of spam messages. Wednesday, July 25, 2012 31
  • 32. Malicious Agencies A malicious agency is one that tries to attack mobile agents currently residing on it or other agencies.  Two types of attack can occur- • Passive attack. • Active attack. Wednesday, July 25, 2012 32
  • 33. Passive attack passive attack "attempts to learn or make use of information from the system but does not affect system resources" Traffic analysis  each message is encrypted because it is not important whether the data is readable(understandable) to the attacker. Here, the adversary attempts to find patterns in the communication between two agencies, which might allow the adversary to derive certain assumptions based on these patterns. Wednesday, July 25, 2012 33
  • 34. Passive attack Traffic analysis Attacker Agency Agency Wednesday, July 25, 2012 34
  • 35. Active Attack Active attacks include security threats in which an agency tries to manipulate agent code or data while it is transmitted between agencies. The most common examples of this kind of attack are alterations, in which an agent’s data is deleted or tampered with by an agency Wednesday, July 25, 2012 35
  • 36. Active attack Agency A Agency B B A C Malicious Agencies Wednesday, July 25, 2012 36
  • 37. Example of active attack  An agent is sent out to find the best airfare for a flight with a particular route  The agent is given various requirements, such as departure and destination, time restrictions.  The agent will visit every airline and query their databases before committing to a purchase and reporting back to the agent owner  A malicious host can interfere with the agent execution in several ways  Erase all information previously collected by the agent .  change the agent’s route so that airlines with more favourable offers are not visited.  simply terminate the agent Wednesday, July 25, 2012 37
  • 38. Example Platform 5 Airline 4 Platform 2 Platform 3 Platform 4 Airline 1 Airline 2 Malicious host Agent Migration Airline 3 Wednesday, July 25, 2012 38
  • 39. Attacking Agents cut and paste attack This attack works even if data has been encrypted so that It can be read only at specific agencies.  An agent, α, carries a data item protected with the public key of an agency, Ai that the agent is going to visit.  a malicious agency, Am, which currently is hosting agent α, could cut the data item, paste it into a new agent, and let this agent migrate to Ai.  The new agent decrypts the data item and carries it back to agency Am. Wednesday, July 25, 2012 39
  • 40. References:  Mobile Agents Basic Concepts, Mobility Models, and the Tracy Toolkit Peter Braun Swinburne University of Technology, Victoria, Australia Wilhelm Rossak ,Friedrich Schiller University, Jena, Thuringia, Germany.  Mobile agent security Niklas Borselius Mobile VCE Research Group Information Security Group, Royal Holloway, University of London  Artificial Intelligence A Modern Approach by Russell & Norvig, Second Edition, Prentice Hall. Wednesday, July 25, 2012 40